summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/fs/zfs/zfs_acl.c
diff options
context:
space:
mode:
authormarks <none@none>2007-08-15 13:03:59 -0700
committermarks <none@none>2007-08-15 13:03:59 -0700
commit29a0b7379cd3103841d05e3ed04486412049accc (patch)
treeb59c4761430c2ceea9d343f2d8b94463c98d179a /usr/src/uts/common/fs/zfs/zfs_acl.c
parent947c7bc0a3af11f56521c217e779aa335b7ac922 (diff)
downloadillumos-gate-29a0b7379cd3103841d05e3ed04486412049accc.tar.gz
6590376 Fails to chmod on a zfs volume with windows ACL
Diffstat (limited to 'usr/src/uts/common/fs/zfs/zfs_acl.c')
-rw-r--r--usr/src/uts/common/fs/zfs/zfs_acl.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/usr/src/uts/common/fs/zfs/zfs_acl.c b/usr/src/uts/common/fs/zfs/zfs_acl.c
index 5eeed0bb88..f78a9cd000 100644
--- a/usr/src/uts/common/fs/zfs/zfs_acl.c
+++ b/usr/src/uts/common/fs/zfs/zfs_acl.c
@@ -168,6 +168,13 @@ zfs_mode_compute(znode_t *zp, zfs_acl_t *aclp)
for (i = 0, acep = aclp->z_acl;
i != aclp->z_acl_count; i++, acep++) {
+
+ /*
+ * Skip over inherit only ACEs
+ */
+ if (acep->a_flags & ACE_INHERIT_ONLY_ACE)
+ continue;
+
entry_type = (acep->a_flags & ACE_TYPE_FLAGS);
if (entry_type == ACE_OWNER) {
if ((acep->a_access_mask & ACE_READ_DATA) &&