diff options
author | Thomas Moestl <tmm@FreeBSD.org> | 2001-04-23 22:52:26 +0000 |
---|---|---|
committer | Thomas Moestl <tmm@FreeBSD.org> | 2001-04-23 22:52:26 +0000 |
commit | e15480f8dd497defc0e355f08a0cbba1697ffe4e (patch) | |
tree | 8ac5ea3c2e6a549e9ae186eca19502e7538e160f /sys/kern/vfs_acl.c | |
parent | 3c43ddee02de739a206c723f8f9e7d4ffcb38a6c (diff) | |
download | src-e15480f8dd497defc0e355f08a0cbba1697ffe4e.tar.gz src-e15480f8dd497defc0e355f08a0cbba1697ffe4e.zip |
Fix a bug introduced in the last commit: vaccess_acl_posix1 only checked
the file gid gainst the egid of the accessing process for the
ACL_GROUP_OBJ case, and ignored supplementary groups.
Approved by: rwatson
Notes
Notes:
svn path=/head/; revision=75888
Diffstat (limited to 'sys/kern/vfs_acl.c')
-rw-r--r-- | sys/kern/vfs_acl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/vfs_acl.c b/sys/kern/vfs_acl.c index 2ae39e06932d..915f12df03df 100644 --- a/sys/kern/vfs_acl.c +++ b/sys/kern/vfs_acl.c @@ -229,7 +229,7 @@ vaccess_acl_posix1e(enum vtype type, uid_t file_uid, gid_t file_gid, for (i = 0; i < acl->acl_cnt; i++) { switch (acl->acl_entry[i].ae_tag) { case ACL_GROUP_OBJ: - if (file_gid != cred->cr_groups[0]) + if (!groupmember(file_gid, cred)) break; dac_granted = 0; if (acl->acl_entry[i].ae_perm & ACL_EXECUTE) |