summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authormm <mm@FreeBSD.org>2017-03-31 20:17:30 +0000
committermm <mm@FreeBSD.org>2017-03-31 20:17:30 +0000
commitf0e80d829a6d0ff8bb7a46bd3a18dd6159b14284 (patch)
tree84dbcb37ab6d18d2bdca41e5d81d0f07c4723cc5 /lib
parent7260a33b7604c94dd57a1c9a2e65bf9eb08fd238 (diff)
downloadFreeBSD-src-f0e80d829a6d0ff8bb7a46bd3a18dd6159b14284.zip
FreeBSD-src-f0e80d829a6d0ff8bb7a46bd3a18dd6159b14284.tar.gz
MFC r315636,315876,316095:
Sync libarchive with vendor Vendor changes/bugfixes (FreeBSD-related): r315636: PR 867 (bsdcpio): show numeric uid/gid when names are not found PR 870 (seekable zip): accept files with valid ZIP64 EOCD headers PR 880 (pax): Fix handling of "size" pax header keyword PR 887 (crypto): Discard 3072 bytes instead of 1024 of first keystream OSS-Fuzz issue 806 (mtree): rework mtree_atol10 integer parser Break ACL read/write code into platform-specific source files r315876: Store extended attributes with extattr_set_link() if no fd is provided Add extended attribute tests to libarchive and bsdtar Fix tar's test_option_acls Support the UF_HIDDEN file flag r316095: Constify variables in several places Unify platform ACL code in a single source file Fix unused variable if compiling on FreeBSD without NFSv4 ACL support
Diffstat (limited to 'lib')
-rw-r--r--lib/libarchive/Makefile3
-rw-r--r--lib/libarchive/config_freebsd.h29
-rw-r--r--lib/libarchive/tests/Makefile1
3 files changed, 14 insertions, 19 deletions
diff --git a/lib/libarchive/Makefile b/lib/libarchive/Makefile
index 2cf1633..9f88f45 100644
--- a/lib/libarchive/Makefile
+++ b/lib/libarchive/Makefile
@@ -49,6 +49,7 @@ SRCS= archive_acl.c \
archive_check_magic.c \
archive_cmdline.c \
archive_cryptor.c \
+ archive_disk_acl_freebsd.c \
archive_digest.c \
archive_entry.c \
archive_entry_copy_stat.c \
@@ -113,10 +114,10 @@ SRCS= archive_acl.c \
archive_string.c \
archive_string_sprintf.c \
archive_util.c \
+ archive_version_details.c \
archive_virtual.c \
archive_write.c \
archive_write_add_filter.c \
- archive_write_disk_acl.c \
archive_write_disk_set_standard_lookup.c \
archive_write_disk_posix.c \
archive_write_open_fd.c \
diff --git a/lib/libarchive/config_freebsd.h b/lib/libarchive/config_freebsd.h
index fe16eb2..f9a3ef2 100644
--- a/lib/libarchive/config_freebsd.h
+++ b/lib/libarchive/config_freebsd.h
@@ -25,30 +25,23 @@
* $FreeBSD$
*/
-/* FreeBSD 5.0 and later have ACL and extattr support. */
+/* FreeBSD 5.0 and later has ACL and extattr support. */
#if __FreeBSD__ > 4
-#define HAVE_ACL_CREATE_ENTRY 1
-#define HAVE_ACL_GET_FD_NP 1
-#define HAVE_ACL_GET_LINK_NP 1
+#define ARCHIVE_ACL_FREEBSD 1
+#define ARCHIVE_XATTR_FREEBSD 1
#define HAVE_ACL_GET_PERM_NP 1
-#define HAVE_ACL_INIT 1
-#define HAVE_ACL_IS_TRIVIAL_NP 1
-#define HAVE_ACL_PERMSET_T 1
-#define HAVE_ACL_SET_FD 1
-#define HAVE_ACL_SET_FD_NP 1
-#define HAVE_ACL_SET_FILE 1
-#define HAVE_ACL_SET_LINK_NP 1
#define HAVE_ARC4RANDOM_BUF 1
-#define HAVE_DECL_ACL_USER 1
-#define HAVE_DECL_ACL_TYPE_NFS4 1
-#define HAVE_EXTATTR_GET_FILE 1
-#define HAVE_EXTATTR_LIST_FILE 1
-#define HAVE_EXTATTR_SET_FD 1
-#define HAVE_EXTATTR_SET_FILE 1
#define HAVE_STRUCT_XVFSCONF 1
#define HAVE_SYS_ACL_H 1
#define HAVE_SYS_EXTATTR_H 1
-#endif
+#if __FreeBSD__ > 7
+/* FreeBSD 8.0 and later has NFSv4 ACL support */
+#define ARCHIVE_ACL_FREEBSD_NFS4 1
+#define HAVE_ACL_GET_LINK_NP 1
+#define HAVE_ACL_IS_TRIVIAL_NP 1
+#define HAVE_ACL_SET_LINK_NP 1
+#endif /* __FreeBSD__ > 7 */
+#endif /* __FreeBSD__ > 4 */
#ifdef WITH_OPENSSL
#define HAVE_LIBCRYPTO 1
diff --git a/lib/libarchive/tests/Makefile b/lib/libarchive/tests/Makefile
index 880e676..904f867 100644
--- a/lib/libarchive/tests/Makefile
+++ b/lib/libarchive/tests/Makefile
@@ -282,6 +282,7 @@ TESTS_SRCS= \
test_write_format_zip_zip64.c \
test_write_open_memory.c \
test_write_read_format_zip.c \
+ test_xattr_platform.c \
test_zip_filename_encoding.c
# Deterministic failures:
OpenPOWER on IntegriCloud