summaryrefslogtreecommitdiff
path: root/archivers
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2017-03-12 06:51:23 +0000
committerjoerg <joerg@pkgsrc.org>2017-03-12 06:51:23 +0000
commit5eb09bb6b3c47e7920c9685a7f4488ba80ef43d0 (patch)
tree35387bbe1d7bfbb78e1a8ae6eb3023e4312a812d /archivers
parent7f443471c6da8a8b0d608791ae15d564f268c868 (diff)
downloadpkgsrc-5eb09bb6b3c47e7920c9685a7f4488ba80ef43d0.tar.gz
Merge 4c3cda21663fa3dc42147c771a3b96b85e631c53:
Darwin ACL: avoid using mbr_identifier_to_uuid() Use mbr_uid_to_uuid() and mbr_gid_to_uuid() for backwards compatibility instead. These functions have been introduced together with membership.h.
Diffstat (limited to 'archivers')
-rwxr-xr-xarchivers/libarchive/files/configure2
-rw-r--r--archivers/libarchive/files/configure.ac2
-rw-r--r--archivers/libarchive/files/libarchive/archive_write_disk_acl.c6
-rw-r--r--archivers/libarchive/files/test_utils/test_common.h2
4 files changed, 5 insertions, 7 deletions
diff --git a/archivers/libarchive/files/configure b/archivers/libarchive/files/configure
index 4b1aef288d7..11231be6abb 100755
--- a/archivers/libarchive/files/configure
+++ b/archivers/libarchive/files/configure
@@ -18188,7 +18188,7 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
- # FreeBSD and MacOS ACL support
+ # MacOS ACL support
ac_fn_c_check_decl "$LINENO" "ACL_TYPE_EXTENDED" "ac_cv_have_decl_ACL_TYPE_EXTENDED" "#include <sys/types.h>
#include <sys/acl.h>
"
diff --git a/archivers/libarchive/files/configure.ac b/archivers/libarchive/files/configure.ac
index 4c6c84d95a4..e9df0a6a090 100644
--- a/archivers/libarchive/files/configure.ac
+++ b/archivers/libarchive/files/configure.ac
@@ -744,7 +744,7 @@ if test "x$enable_acl" != "xno"; then
[#include <sys/types.h>
#include <sys/acl.h>])
- # FreeBSD and MacOS ACL support
+ # MacOS ACL support
AC_CHECK_DECLS([ACL_TYPE_EXTENDED, ACL_SYNCHRONIZE], [], [],
[#include <sys/types.h>
#include <sys/acl.h>])
diff --git a/archivers/libarchive/files/libarchive/archive_write_disk_acl.c b/archivers/libarchive/files/libarchive/archive_write_disk_acl.c
index 643f3c3a073..49792749688 100644
--- a/archivers/libarchive/files/libarchive/archive_write_disk_acl.c
+++ b/archivers/libarchive/files/libarchive/archive_write_disk_acl.c
@@ -424,8 +424,7 @@ set_acl(struct archive *a, int fd, const char *name,
acl_set_tag_type(acl_entry, ACL_USER);
acl_set_qualifier(acl_entry, &ae_uid);
#else /* MacOS */
- if (mbr_identifier_to_uuid(ID_TYPE_UID, &ae_uid,
- sizeof(uid_t), ae_uuid) != 0)
+ if (mbr_uid_to_uuid(ae_uid, ae_uuid) != 0)
continue;
if (acl_set_qualifier(acl_entry, &ae_uuid) != 0)
continue;
@@ -437,8 +436,7 @@ set_acl(struct archive *a, int fd, const char *name,
acl_set_tag_type(acl_entry, ACL_GROUP);
acl_set_qualifier(acl_entry, &ae_gid);
#else /* MacOS */
- if (mbr_identifier_to_uuid(ID_TYPE_GID, &ae_gid,
- sizeof(gid_t), ae_uuid) != 0)
+ if (mbr_gid_to_uuid(ae_gid, ae_uuid) != 0)
continue;
if (acl_set_qualifier(acl_entry, &ae_uuid) != 0)
continue;
diff --git a/archivers/libarchive/files/test_utils/test_common.h b/archivers/libarchive/files/test_utils/test_common.h
index d8fd9c486b5..9807c218dbd 100644
--- a/archivers/libarchive/files/test_utils/test_common.h
+++ b/archivers/libarchive/files/test_utils/test_common.h
@@ -129,7 +129,7 @@
#if HAVE_SYS_ACL_H && HAVE_ACL_CREATE_ENTRY && HAVE_ACL_INIT && HAVE_ACL_SET_FILE
#if HAVE_DECL_ACL_USER
#define HAVE_POSIX_ACL 1
-#elif HAVE_DECL_ACL_TYPE_EXTENDED
+#elif HAVE_DECL_ACL_TYPE_EXTENDED && HAVE_MEMBERSHIP_H
#define HAVE_DARWIN_ACL 1
#endif
#if HAVE_DECL_ACL_TYPE_NFS4