summaryrefslogtreecommitdiff
path: root/lib/set-permissions.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2015-07-14 22:29:16 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2015-07-14 22:30:01 -0700
commitc40ea1328bb33abaec14f1fc92ac2349b5ee2715 (patch)
tree8686d9899315dd1bea97c92078d20a42eb07b0aa /lib/set-permissions.c
parentff0e184ef3af49b19cdfb5ee5bb24212676c800b (diff)
downloademacs-c40ea1328bb33abaec14f1fc92ac2349b5ee2715.tar.gz
Merge from gnulib
This incorporates: 2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls 2015-07-05 acl-permissions: Fix on FreeBSD 2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c: * lib/set-permissions.c: Copy from gnulib.
Diffstat (limited to 'lib/set-permissions.c')
-rw-r--r--lib/set-permissions.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/set-permissions.c b/lib/set-permissions.c
index 25c463d966d..1aa5b4941c7 100644
--- a/lib/set-permissions.c
+++ b/lib/set-permissions.c
@@ -530,7 +530,8 @@ set_acls (struct permission_context *ctx, const char *name, int desc,
*acls_set = true;
if (S_ISDIR(ctx->mode))
{
- if (! from_mode && ctx->default_acl)
+ if (! from_mode && ctx->default_acl &&
+ acl_default_nontrivial (ctx->default_acl))
ret = acl_set_file (name, ACL_TYPE_DEFAULT,
ctx->default_acl);
else
@@ -540,6 +541,15 @@ set_acls (struct permission_context *ctx, const char *name, int desc,
}
}
+# if HAVE_ACL_TYPE_NFS4 /* FreeBSD */
+
+ /* File systems either support POSIX ACLs (for example, ufs) or NFS4 ACLs
+ (for example, zfs). */
+
+ /* TODO: Implement setting ACLs once get_permissions() reads them. */
+
+# endif
+
# else /* HAVE_ACL_TYPE_EXTENDED */
/* Mac OS X */