]> git.ipfire.org Git - thirdparty/libarchive.git/log
thirdparty/libarchive.git
6 years agocmake: Add ENABLE_LZ4 option 968/head
Oleg Shparber [Sun, 12 Nov 2017 23:56:34 +0000 (01:56 +0200)] 
cmake: Add ENABLE_LZ4 option

6 years agoMerge pull request #964 from legnaleurc/fix_fallthrough
Tim Kientzle [Thu, 2 Nov 2017 15:46:45 +0000 (08:46 -0700)] 
Merge pull request #964 from legnaleurc/fix_fallthrough

Fix -Werror=implicit-fallthrough= for GCC 7.

6 years agoFix -Werror=implicit-fallthrough= for GCC 7. 964/head
Wei-Cheng Pan [Mon, 30 Oct 2017 04:13:00 +0000 (12:13 +0800)] 
Fix -Werror=implicit-fallthrough= for GCC 7.

6 years agoMerge pull request #961 from zweger/master
Tim Kientzle [Sun, 22 Oct 2017 17:40:37 +0000 (10:40 -0700)] 
Merge pull request #961 from zweger/master

Fix ZIP format names

6 years agoClear the ZIP format name before constructing a new one, so it isn't appended to... 961/head
Zack Weger [Fri, 20 Oct 2017 18:09:23 +0000 (14:09 -0400)] 
Clear the ZIP format name before constructing a new one, so it isn't appended to the format name of the previous entry

6 years agoFix a potential NULL pointer dereference of `tar` in archive_read_support_format_tar...
ngie [Sun, 15 Oct 2017 17:59:07 +0000 (10:59 -0700)] 
Fix a potential NULL pointer dereference of `tar` in archive_read_support_format_tar when HAVE_COPYFILE_H is defined (#959)

If HAVE_COPYFILE_H is defined and allocating tar via calloc fails, tar
would be dereferenced before the tar == NULL check is done, causing a
NULL pointer dereference. Move the HAVE_COPYFILE_H block after the NULL
dereference check.

6 years agodelete dead ppmd7 alloc callbacks (#893)
Mike Frysinger [Sat, 7 Oct 2017 09:05:24 +0000 (05:05 -0400)] 
delete dead ppmd7 alloc callbacks (#893)

These callbacks are just indirections over the standard free & malloc
functions.  Delete them and just call free & malloc directly.

This saves 672 .text bytes and 52 .data bytes on x86_64/Linux.  Also
avoids needing writable data in the first place.

6 years agoFix archive freeing bug in bsdcat.
Joerg Sonnenberger [Sat, 7 Oct 2017 00:33:16 +0000 (02:33 +0200)] 
Fix archive freeing bug in bsdcat.

(1) Do not double free a for the stdin case. Reported by Sean Purcell in
    PR #904.
(2) Do not query errors after archive_read_free either, the memory is
    gone. Split operation into close and read, reporting errors from the
    former.

6 years agoMatch archive.h for la_int64_t vs int64_t
Joerg Sonnenberger [Fri, 6 Oct 2017 23:52:52 +0000 (01:52 +0200)] 
Match archive.h for la_int64_t vs int64_t

6 years agobsdtar manpage: unify descriptions of compression options
Martin Matuska [Sun, 1 Oct 2017 00:17:22 +0000 (02:17 +0200)] 
bsdtar manpage: unify descriptions of compression options

6 years agoMerge pull request #912 from korli/libnetwork
Tim Kientzle [Sat, 30 Sep 2017 17:34:48 +0000 (10:34 -0700)] 
Merge pull request #912 from korli/libnetwork

Check libgnu for xattr functions on Haiku

6 years agoDo not use nanosecond file time APIs on macOS < 10.13 953/head
Brad King [Wed, 20 Sep 2017 14:19:38 +0000 (10:19 -0400)] 
Do not use nanosecond file time APIs on macOS < 10.13

The SDK for macOS 10.13 adds `futimens` and `utimensat` so our checks
for these symbols may pass.  However, the symbols are not available at
runtime on older macOS versions.  Instead on macOS we can check for
availability based on the deployment target version.

6 years agoFix case in comment.
Joerg Sonnenberger [Mon, 18 Sep 2017 01:14:37 +0000 (03:14 +0200)] 
Fix case in comment.

6 years agoAvoid a read off-by-one error for UTF16 names in RAR archives.
Joerg Sonnenberger [Sat, 9 Sep 2017 15:47:32 +0000 (17:47 +0200)] 
Avoid a read off-by-one error for UTF16 names in RAR archives.

Reported-By: OSS-Fuzz issue 573
6 years agoEnsure that the AES extension header is large enough.
Joerg Sonnenberger [Wed, 6 Sep 2017 21:03:00 +0000 (23:03 +0200)] 
Ensure that the AES extension header is large enough.

Reported-By: OSS-Fuzz issue 2394
6 years agoPlace a limit on the mtree line length to make fuzzers happy.
Joerg Sonnenberger [Wed, 6 Sep 2017 20:48:44 +0000 (22:48 +0200)] 
Place a limit on the mtree line length to make fuzzers happy.

Reported-By: OSS-Fuzz issue 2936
6 years agoDon't allow sparse mapping entry to pass beyond 63bit.
Joerg Sonnenberger [Tue, 5 Sep 2017 18:14:09 +0000 (20:14 +0200)] 
Don't allow sparse mapping entry to pass beyond 63bit.

Reported-By: OSS-Fuzz issue 1627
6 years agoMatch full strings, not just prefixes.
Joerg Sonnenberger [Tue, 5 Sep 2017 16:15:45 +0000 (18:15 +0200)] 
Match full strings, not just prefixes.

6 years agoDo something sensible for empty strings to make fuzzers happy.
Joerg Sonnenberger [Tue, 5 Sep 2017 16:12:19 +0000 (18:12 +0200)] 
Do something sensible for empty strings to make fuzzers happy.

6 years agoIssue #947: Reference archive_write_set_options in archive_write.3
Tim Kientzle [Mon, 4 Sep 2017 00:27:30 +0000 (17:27 -0700)] 
Issue #947: Reference archive_write_set_options in archive_write.3

6 years agoMerge pull request #943 from jrmarino/master
Tim Kientzle [Thu, 31 Aug 2017 01:34:50 +0000 (18:34 -0700)] 
Merge pull request #943 from jrmarino/master

Recognize ".tzst" extension as ".tar.zst" (re: issue# 941)

6 years agoRecognize ".tzst" extension as ".tar.zst" 943/head
jrmarino [Tue, 22 Aug 2017 13:46:29 +0000 (08:46 -0500)] 
Recognize ".tzst" extension as ".tar.zst"

This follows convention establish by ".tgz", ".txz", etc.
The alias array was not sorted alphabetically (the only order seems to be grouping by decomposed extension), so the new element was just added to the end.

6 years agoMerge pull request #905 from iburinoc/zstd
Tim Kientzle [Sun, 13 Aug 2017 06:05:31 +0000 (23:05 -0700)] 
Merge pull request #905 from iburinoc/zstd

Add support for Zstandard read and write filters

6 years agoMerge pull request #934 from tonytheodore/cflags-private
Tim Kientzle [Sun, 13 Aug 2017 05:39:17 +0000 (22:39 -0700)] 
Merge pull request #934 from tonytheodore/cflags-private

libarchive.pc.in: add Cflags.private for static linking

6 years agolibarchive.pc.in: add Cflags.private for static linking 934/head
Tony Theodore [Sun, 13 Aug 2017 04:27:12 +0000 (14:27 +1000)] 
libarchive.pc.in: add Cflags.private for static linking

`pkgconf` supports a `Cflags.private` that simplifies static linking
for windows (mingw cross) builds. Users of `pkg-config` will be
unaffected by this as existing build scripts will already set the
`-DLIBARCHIVE_STATIC` as required.

6 years agoMerge pull request #930 from Tarsnap/spelling-upload
Tim Kientzle [Sat, 5 Aug 2017 17:38:57 +0000 (10:38 -0700)] 
Merge pull request #930 from Tarsnap/spelling-upload

Spelling fixes

6 years agoMerge pull request #929 from cperciva/master
Tim Kientzle [Sat, 5 Aug 2017 17:37:23 +0000 (10:37 -0700)] 
Merge pull request #929 from cperciva/master

Avoid overflow when reading corrupt cpio archive

6 years agoAvoid overflow when reading corrupt cpio archive 929/head
Colin Percival [Fri, 28 Jul 2017 23:28:50 +0000 (16:28 -0700)] 
Avoid overflow when reading corrupt cpio archive

A cpio "newc" archive with a namelength of "FFFFFFFF", if read on a
system with a 32-bit size_t, would result in namelength + name_pad
overflowing 32 bits and libarchive attempting to copy 2^32-1 bytes
from a 2-byte buffer, with appropriately hilarious results.

Check for this overflow and fail; there's no legitimate reason for a
cpio archive to contain a file with a name over 4 billion characters
in length.

Reported by: Eyal Itkin
Security: Corrupt archives can cause libarchive to crash on
32-bit platforms.
Sponsored by: Tarsnap Backup Inc.

6 years agoRevert addition of assert.
Joerg Sonnenberger [Tue, 1 Aug 2017 22:07:38 +0000 (00:07 +0200)] 
Revert addition of assert.

6 years agoDon't call wmemmove if size is zero.
Joerg Sonnenberger [Tue, 1 Aug 2017 15:17:45 +0000 (17:17 +0200)] 
Don't call wmemmove if size is zero.

The data pointers can be NULL in this case and ISO C says this is UB.

6 years agoSpelling fixes 930/head
Graham Percival [Sun, 30 Jul 2017 21:26:02 +0000 (14:26 -0700)] 
Spelling fixes

Sponsored by: Tarsnap Backup Inc.

6 years agoarchive_write_ar_data(): replace strncpy() with memcpy()
Martin Matuska [Fri, 28 Jul 2017 23:12:46 +0000 (01:12 +0200)] 
archive_write_ar_data(): replace strncpy() with memcpy()

6 years agoMerge pull request #926 from emaste/libarchive
Martin Matuska [Fri, 28 Jul 2017 23:07:46 +0000 (01:07 +0200)] 
Merge pull request #926 from emaste/libarchive

ensure ar strtab is null terminated

6 years agoensure ar strtab is null terminated 926/head
Ed Maste [Fri, 21 Jul 2017 10:46:17 +0000 (06:46 -0400)] 
ensure ar strtab is null terminated

ar support calls strstr() on the strtab, which requres that its
arguments are null terminated.

6 years agoIssue #924: fix capitalization of bcrypt.h header
Tim Kientzle [Sun, 16 Jul 2017 23:10:08 +0000 (16:10 -0700)] 
Issue #924: fix capitalization of bcrypt.h header

6 years agoLibarchive 3.3.3dev
Tim Kientzle [Mon, 10 Jul 2017 03:04:02 +0000 (20:04 -0700)] 
Libarchive 3.3.3dev

6 years agoLibarchive 3.3.2 v3.3.2
Tim Kientzle [Mon, 10 Jul 2017 02:38:04 +0000 (19:38 -0700)] 
Libarchive 3.3.2

6 years agoAdd a missing test file
Tim Kientzle [Sun, 9 Jul 2017 22:57:01 +0000 (15:57 -0700)] 
Add a missing test file

6 years agoCheck libgnu for xattr functions on Haiku 912/head
Chris Roberts [Sun, 27 Oct 2013 00:36:43 +0000 (18:36 -0600)] 
Check libgnu for xattr functions on Haiku

6 years agoIssue #910: Don't use stdin as a source of test data
Tim Kientzle [Sun, 21 May 2017 19:36:34 +0000 (12:36 -0700)] 
Issue #910:  Don't use stdin as a source of test data

7 years agoFix zstd memory allocation and null checks 905/head
Sean Purcell [Tue, 16 May 2017 14:00:51 +0000 (10:00 -0400)] 
Fix zstd memory allocation and null checks

7 years agoFix alphabetical order, other small fixes
Sean Purcell [Wed, 26 Apr 2017 18:10:17 +0000 (11:10 -0700)] 
Fix alphabetical order, other small fixes

7 years agozstd: Don't bid on skippable frames
Sean Purcell [Wed, 26 Apr 2017 05:24:07 +0000 (22:24 -0700)] 
zstd: Don't bid on skippable frames

7 years agozstd: Address comments by @terrelln
Sean Purcell [Tue, 25 Apr 2017 22:10:28 +0000 (15:10 -0700)] 
zstd: Address comments by @terrelln

7 years agoBuild with zstd on TravisCI on OS X
Sean Purcell [Thu, 20 Apr 2017 22:58:48 +0000 (15:58 -0700)] 
Build with zstd on TravisCI on OS X

Ubuntu 14.04 apt doesn't have zstd so we can't add it to that yet

7 years agoDon't try to use libzstd versions without streaming API
Sean Purcell [Thu, 20 Apr 2017 22:50:34 +0000 (15:50 -0700)] 
Don't try to use libzstd versions without streaming API

7 years agoSkip zstd write tests when library not present
Sean Purcell [Thu, 20 Apr 2017 21:25:13 +0000 (14:25 -0700)] 
Skip zstd write tests when library not present

7 years agoFix compile errors with cmake and when zstd isn't present
Sean Purcell [Thu, 20 Apr 2017 21:02:08 +0000 (14:02 -0700)] 
Fix compile errors with cmake and when zstd isn't present

7 years agoFix zstd reader and change variable scopes
Sean Purcell [Thu, 20 Apr 2017 19:36:09 +0000 (12:36 -0700)] 
Fix zstd reader and change variable scopes

7 years agoWhitespace fixes
Sean Purcell [Thu, 20 Apr 2017 19:02:45 +0000 (12:02 -0700)] 
Whitespace fixes

7 years agoAdd zstd test suite
Sean Purcell [Thu, 20 Apr 2017 18:59:10 +0000 (11:59 -0700)] 
Add zstd test suite

7 years agoSmall zstd fixes
Sean Purcell [Thu, 20 Apr 2017 17:47:54 +0000 (10:47 -0700)] 
Small zstd fixes

7 years agoAdd Zstandard write support
Sean Purcell [Wed, 19 Apr 2017 23:51:50 +0000 (16:51 -0700)] 
Add Zstandard write support

7 years agoAdd Zstandard read support
Sean Purcell [Wed, 19 Apr 2017 22:15:09 +0000 (15:15 -0700)] 
Add Zstandard read support

7 years agoFix use-after-free in error branch. From Ngie Cooper.
Joerg Sonnenberger [Thu, 11 May 2017 10:29:41 +0000 (12:29 +0200)] 
Fix use-after-free in error branch. From Ngie Cooper.

7 years agoRemove fallback tree in LZX decoder.
Joerg Sonnenberger [Mon, 1 May 2017 15:33:15 +0000 (17:33 +0200)] 
Remove fallback tree in LZX decoder.

The LZX decoder flattens the Huffman tree into a table, but wanted to
limit it to 1k elements to reduce L1 pressure. Since the logic for
filling was flawed and performance argument points more to a bad index
logic, remove the tree logic.

Reported-By: OSS-Fuzz issue 497

7 years agoFix build on ancient systems without int64_t definition.
Joerg Sonnenberger [Sun, 30 Apr 2017 13:12:59 +0000 (15:12 +0200)] 
Fix build on ancient systems without int64_t definition.

7 years agoRefactor numeric parsing routines into a single version without UB.
Joerg Sonnenberger [Sat, 29 Apr 2017 21:09:42 +0000 (23:09 +0200)] 
Refactor numeric parsing routines into a single version without UB.

Reported-By: OSS-Fuzz issue 862

7 years agoTighten mode check: '8' and '9' don't make good octal digits.
Joerg Sonnenberger [Sat, 29 Apr 2017 20:15:52 +0000 (22:15 +0200)] 
Tighten mode check: '8' and '9' don't make good octal digits.

7 years agoBe consistent about the types of internal and external link counts.
Joerg Sonnenberger [Sat, 29 Apr 2017 19:39:57 +0000 (21:39 +0200)] 
Be consistent about the types of internal and external link counts.

Reported-By: OSS-Fuzz issue 577

7 years agoDon't leak memory.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:57:33 +0000 (18:57 +0200)] 
Don't leak memory.

7 years agoChange little endian read routines to compute in unsigned math.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:56:16 +0000 (18:56 +0200)] 
Change little endian read routines to compute in unsigned math.

Shifting a negative value is UB in ISO C.

7 years agoAvoid signed overflow by computing in uintmax_t and casting the result.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:55:28 +0000 (18:55 +0200)] 
Avoid signed overflow by computing in uintmax_t and casting the result.

7 years agoAvoid memcpy of zero length, the source can be NULL.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:55:05 +0000 (18:55 +0200)] 
Avoid memcpy of zero length, the source can be NULL.

7 years agoDon't check unaligned access in ubsan for GCC.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:54:29 +0000 (18:54 +0200)] 
Don't check unaligned access in ubsan for GCC.

7 years agoAvoid shifting negative numbers by doing endian manipulation unsignedly.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:53:56 +0000 (18:53 +0200)] 
Avoid shifting negative numbers by doing endian manipulation unsignedly.

7 years agoAvoid memcpy if length is zero, the source can be NULL in this case.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:53:17 +0000 (18:53 +0200)] 
Avoid memcpy if length is zero, the source can be NULL in this case.

7 years agoOptimize string processing.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:52:21 +0000 (18:52 +0200)] 
Optimize string processing.

7 years agoExplicitly free pass_destpath after processing.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:51:04 +0000 (18:51 +0200)] 
Explicitly free pass_destpath after processing.

7 years agoFree linkresolver after processing.
Joerg Sonnenberger [Sat, 29 Apr 2017 16:50:17 +0000 (18:50 +0200)] 
Free linkresolver after processing.

7 years agoRedo 1e660621b4b00eaf4ef7a508aedf52c5a421bd2e, only skip the memmove.
Joerg Sonnenberger [Sat, 29 Apr 2017 13:50:24 +0000 (15:50 +0200)] 
Redo 1e660621b4b00eaf4ef7a508aedf52c5a421bd2e, only skip the memmove.

7 years agoReshuffle conditions to ensure path is initialised and NULL handled.
Joerg Sonnenberger [Sat, 29 Apr 2017 13:39:37 +0000 (15:39 +0200)] 
Reshuffle conditions to ensure path is initialised and NULL handled.

7 years agoShort cut zero size to avoid notnull attribute for mmemove in glibc.
Joerg Sonnenberger [Fri, 28 Apr 2017 21:32:32 +0000 (23:32 +0200)] 
Short cut zero size to avoid notnull attribute for mmemove in glibc.

Reported-By: OSS-Fuzz issue 497

7 years agoRewrite expressions to avoid undefined behavior.
Joerg Sonnenberger [Fri, 28 Apr 2017 21:05:43 +0000 (23:05 +0200)] 
Rewrite expressions to avoid undefined behavior.

Reported-By: OSS-Fuzz issue 527

7 years agoAdd missing .Nm to the NAME section. (#906)
Abhinav Upadhyay [Sun, 23 Apr 2017 12:05:14 +0000 (17:35 +0530)] 
Add missing .Nm to the NAME section. (#906)

7 years agoIssue #901: Sparse files with long name get renamed.
Joerg Sonnenberger [Fri, 21 Apr 2017 00:22:55 +0000 (02:22 +0200)] 
Issue #901: Sparse files with long name get renamed.

The original ustar header has a 100 character limit for the file name.
With the POSIX interchange format, an additional header attribute
contains the full path and libarchive tries to cut it to something
sensible. The GNU sparse file extension on the other hand also likes to
mangle the ustar header field to include a marker and contains yet
another attribute for the original path. If the name was truncated
earlier, this attribute would get the incorrect truncated name.

7 years agoComplay with the spirit, if not the letter of the GNU sparse file rule.
Joerg Sonnenberger [Fri, 21 Apr 2017 00:11:43 +0000 (02:11 +0200)] 
Complay with the spirit, if not the letter of the GNU sparse file rule.

7 years agoMerge pull request #902 from mingzym/libressl
Tim Kientzle [Sun, 9 Apr 2017 06:05:58 +0000 (23:05 -0700)] 
Merge pull request #902 from mingzym/libressl

fix building with libressl

7 years agofix building with libressl 902/head
Zhao Yongming [Sun, 9 Apr 2017 05:09:13 +0000 (13:09 +0800)] 
fix building with libressl

patch from Gentoo Bug 614460, credit to hexumg@gmail.com.

7 years agoMerge pull request #897 from phillipberndt/master
Tim Kientzle [Sat, 8 Apr 2017 19:02:12 +0000 (12:02 -0700)] 
Merge pull request #897 from phillipberndt/master

Add test for #870 / #869

7 years agodirfd can be implemented as macro, so use a better test case.
Joerg Sonnenberger [Fri, 7 Apr 2017 12:37:12 +0000 (14:37 +0200)] 
dirfd can be implemented as macro, so use a better test case.

7 years agoShrink array for days per month. Saves 31 Bytes on AMD64.
Joerg Sonnenberger [Fri, 7 Apr 2017 12:10:52 +0000 (14:10 +0200)] 
Shrink array for days per month. Saves 31 Bytes on AMD64.

7 years agoPlug memory leaks in xattr and acl tests.
Martin Matuska [Mon, 3 Apr 2017 12:09:53 +0000 (14:09 +0200)] 
Plug memory leaks in xattr and acl tests.
Detected with libasan on Linux.

7 years agoUpdate date in archive_read_disk.3 and archive_write_disk.3
Martin Matuska [Mon, 3 Apr 2017 11:42:30 +0000 (13:42 +0200)] 
Update date in archive_read_disk.3 and archive_write_disk.3

7 years agoAdd manpage entry for archive_read_disk_set_behavior().
Martin Matuska [Mon, 3 Apr 2017 11:37:24 +0000 (13:37 +0200)] 
Add manpage entry for archive_read_disk_set_behavior().
Update and alphabetically sort options in archive_write_disk_set_options().

7 years agoAdd test for #870 897/head
Phillip Berndt [Sun, 2 Apr 2017 14:43:23 +0000 (16:43 +0200)] 
Add test for #870

7 years agoReport names of extended attributes that could not be restored
Martin Matuska [Wed, 29 Mar 2017 21:16:02 +0000 (23:16 +0200)] 
Report names of extended attributes that could not be restored
Remove xattr namespace limitations for AIX and Darwin
On Linux, skip all known ACL extended attributes and obsolete xfsroot

7 years agoEncapsulate archive_disk_acl.* in an ARCHIVE_ACL_* ifdef
Martin Matuska [Tue, 28 Mar 2017 10:19:13 +0000 (12:19 +0200)] 
Encapsulate archive_disk_acl.* in an ARCHIVE_ACL_* ifdef
This allows debugging and compilation with defines outside of configure.

7 years agoFix copyright in archive_disk_acl_linux.c
Martin Matuska [Tue, 28 Mar 2017 09:44:27 +0000 (11:44 +0200)] 
Fix copyright in archive_disk_acl_linux.c

7 years agoFix compilation on FreeBSD without NFSv4 ACL support
Martin Matuska [Tue, 28 Mar 2017 09:40:25 +0000 (11:40 +0200)] 
Fix compilation on FreeBSD without NFSv4 ACL support

7 years agoUnify platform ACL code in single files.
Martin Matuska [Tue, 28 Mar 2017 00:52:21 +0000 (02:52 +0200)] 
Unify platform ACL code in single files.
Declare map constants static for better optimization.

7 years agoMerge pull request #892 from vapier/master
Tim Kientzle [Mon, 27 Mar 2017 00:52:01 +0000 (17:52 -0700)] 
Merge pull request #892 from vapier/master

do not make DaysInMonth static

7 years agodo not make DaysInMonth static 892/head
Mike Frysinger [Thu, 23 Mar 2017 06:31:54 +0000 (02:31 -0400)] 
do not make DaysInMonth static

Since the Feb month is written to based on arguments to this function,
it makes it not safe to use simultaneously.  Drop the static markings.

7 years agoMerge pull request #891 from vapier/master
Tim Kientzle [Sun, 26 Mar 2017 23:03:48 +0000 (16:03 -0700)] 
Merge pull request #891 from vapier/master

constify variables more

7 years agoconstify variables more 891/head
Mike Frysinger [Thu, 23 Mar 2017 06:26:52 +0000 (02:26 -0400)] 
constify variables more

A bunch of constant variables/tables are missing const markings.
Adding them allows moving more data to the read only sections, and
ends up shrinking writable data a bit by 1k on x86_64/Linux.  Not
much, but still nice.

7 years agoSupport UF_HIDDEN file flag (FreeBSD and Darwin)
Martin Matuska [Thu, 23 Mar 2017 16:30:45 +0000 (17:30 +0100)] 
Support UF_HIDDEN file flag (FreeBSD and Darwin)

7 years agoImprove extended attribute support
Martin Matuska [Thu, 23 Mar 2017 14:27:59 +0000 (15:27 +0100)] 
Improve extended attribute support

Mac OS X changes:
  - add support for extended file attributes via sys/xattr.h
  - when extracting an archive entry that has mac_metadata and
    mac_metadata is requested to be extracted, extended attributes
    are restored only from mac_metadata.
  - by default, extended attributes are stored both in mac_metadata and
    SCHILY.xattr/LIBARCHIVE.xattr. This is subject to review and change.

To match behavior on other platforms, store extended attributes on
FreeBSD with extattr_set_link() if no fd is provided.

Detection of extended attributes support in configure stage has been
rewritten.

Added xattr platform test to libarchive and xattrs option test to bsdtar.

7 years agotar: fix conditionals and add richacl support to test_option_acls
Martin Matuska [Thu, 23 Mar 2017 10:54:44 +0000 (11:54 +0100)] 
tar: fix conditionals and add richacl support to test_option_acls

7 years agoUpdate config_freebsd.h to match FreeBSD version
Martin Matuska [Tue, 21 Mar 2017 10:45:10 +0000 (11:45 +0100)] 
Update config_freebsd.h to match FreeBSD version

7 years agoAlways include extern keyword for ACL map constants
Martin Matuska [Mon, 20 Mar 2017 11:30:24 +0000 (12:30 +0100)] 
Always include extern keyword for ACL map constants