Author: trasz
Date: Sat Mar 27 18:12:00 2010
New Revision: 205771
URL: http://svn.freebsd.org/changeset/base/205771

Log:
  MFC r200723:
  
  Interpret VAPPEND correctly in vaccess_acl_nfs4(9).

Modified:
  stable/8/sys/kern/subr_acl_nfs4.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)

Modified: stable/8/sys/kern/subr_acl_nfs4.c
==============================================================================
--- stable/8/sys/kern/subr_acl_nfs4.c   Sat Mar 27 18:09:40 2010        
(r205770)
+++ stable/8/sys/kern/subr_acl_nfs4.c   Sat Mar 27 18:12:00 2010        
(r205771)
@@ -82,6 +82,13 @@ _access_mask_from_accmode(accmode_t accm
                        access_mask |= accmode2mask[i].mask;
        }
 
+       /*
+        * VAPPEND is just a modifier for VWRITE; if the caller asked
+        * for 'VAPPEND | VWRITE', we want to check for ACL_APPEND_DATA only.
+        */
+       if (access_mask & ACL_APPEND_DATA)
+               access_mask &= ~ACL_WRITE_DATA;
+
        return (access_mask);
 }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to