changeset 12322:2d0b03fa06b5

6947609 not inheriting inherit_only directories correctly
author Mark Shellenbaum <Mark.Shellenbaum@Sun.COM>
date Thu, 06 May 2010 15:16:09 -0600
parents c2943f5c6eb9
children c4a76aa91cfd
files usr/src/uts/common/fs/zfs/zfs_acl.c
diffstat 1 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/uts/common/fs/zfs/zfs_acl.c	Thu May 06 15:08:31 2010 -0600
+++ b/usr/src/uts/common/fs/zfs/zfs_acl.c	Thu May 06 15:16:09 2010 -0600
@@ -1633,11 +1633,14 @@
 		 * inherit_only
 		 */
 		if ((iflags & (ACE_FILE_INHERIT_ACE |
-		    ACE_DIRECTORY_INHERIT_ACE)) ==
-		    ACE_FILE_INHERIT_ACE) {
+		    ACE_DIRECTORY_INHERIT_ACE)) == ACE_FILE_INHERIT_ACE) {
 			newflags |= ACE_INHERIT_ONLY_ACE;
 			aclp->z_ops.ace_flags_set(acep,
 			    newflags|ACE_INHERITED_ACE);
+		} else {
+			newflags &= ~ACE_INHERIT_ONLY_ACE;
+			aclp->z_ops.ace_flags_set(acep,
+			    newflags|ACE_INHERITED_ACE);
 		}
 	}
 	return (aclp);