Date: Thu, 14 Aug 2008 15:32:55 GMT From: Edward Tomasz Napierala <trasz@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 147392 for review Message-ID: <200808141532.m7EFWt2A097177@repoman.freebsd.org>
index | next in thread | raw e-mail
http://perforce.freebsd.org/chv.cgi?CH=147392 Change 147392 by trasz@trasz_traszkan on 2008/08/14 15:32:00 Tweak computing mode from ACL and computing inherited ACL to match ZFS. Affected files ... .. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/subr_acl_nfs4.c#24 edit Differences ... ==== //depot/projects/soc2008/trasz_nfs4acl/sys/kern/subr_acl_nfs4.c#24 (text+ko) ==== @@ -686,8 +686,10 @@ entry->ae_extended != ACL_EXTENDED_DENY) continue; +#ifdef SunOS_doesnt_do_that if (entry->ae_flags & ACL_ENTRY_ONLY_INHERIT) continue; +#endif if (entry->ae_tag == ACL_USER_OBJ) { if ((entry->ae_perm & ACL_READ_DATA) && @@ -857,6 +859,14 @@ ACL_ENTRY_ONLY_INHERIT); /* + * This is not in the specification, but SunOS + * apparently does that. + */ + if (entry->ae_extended == ACL_EXTENDED_ALLOW) + entry->ae_perm &= ~(ACL_WRITE_ACL | + ACL_WRITE_OWNER); + + /* * Continue on to the next ACE. */ continue; @@ -880,7 +890,7 @@ } /* - * 2.C. If the type of hte ACE is neither ALLOW nor deny, + * 2.C. If the type of the ACE is neither ALLOW nor deny, * then continue. */ if (entry->ae_extended != ACL_EXTENDED_ALLOW && @@ -912,9 +922,6 @@ * an implementation MAY clear the following * mask bits: ACL_WRITE_ACL, ACL_WRITE_OWNER. */ - /* - * XXX: MAY? - */ if (copy->ae_extended == ACL_EXTENDED_ALLOW) copy->ae_perm &= ~(ACL_WRITE_ACL | ACL_WRITE_OWNER);help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200808141532.m7EFWt2A097177>
