]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Now that the central POSIX.1e ACL code implements functions to
authorRobert Watson <rwatson@FreeBSD.org>
Mon, 4 Aug 2003 03:29:13 +0000 (03:29 +0000)
committerRobert Watson <rwatson@FreeBSD.org>
Mon, 4 Aug 2003 03:29:13 +0000 (03:29 +0000)
commit2495048579a016acfbfd4346e279c71e880e3209
treedc210d6841238274b3f3c0c6ae772aa8cfc2e8c5
parentd8af834050b55ad9da9b0d80ad1fa2314f02ad12
Now that the central POSIX.1e ACL code implements functions to
generate the inode mode from a default ACL and creation mask,
implement ufs_sync_inode_from_acl() using acl_posix1e_newfilemode().

Since ACL_OVERRIDE_MASK/ACL_PRESERVE_MASK are defined, we no
longer need to explicitly pass in a "preserve_mask" field: this
is implicit in the use of POSIX.1e semantics.

Note: this change contains a semantic bugfix for new file creation:
we now intersect the ACL-generated mode and the cmode requested by
the user process.  This means permissions on newly created file
objects will now be more conservative.  In the future, we may want
to provide alternative semantics (similar to Solaris and Linux) in
which the ACL mask overrides the umask, permitting ACLs to broaden
the rights beyond the requested umask.

PR: 50148
Reported by: Ritz, Bruno <bruno_ritz@gmx.ch>
Obtained from: TrustedBSD Project
sys/ufs/ufs/acl.h
sys/ufs/ufs/ufs_acl.c
sys/ufs/ufs/ufs_vnops.c