summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_acl.c
diff options
context:
space:
mode:
authortmm <tmm@FreeBSD.org>2001-04-23 22:52:26 +0000
committertmm <tmm@FreeBSD.org>2001-04-23 22:52:26 +0000
commit901e595f361fd709e9d550f352cf156a2342ca3f (patch)
treed28a7c09b8340a972d5356fd4f76b2feee9fd584 /sys/kern/vfs_acl.c
parent152824577f3549e83e22961422f30fb5ae53782c (diff)
downloadFreeBSD-src-901e595f361fd709e9d550f352cf156a2342ca3f.zip
FreeBSD-src-901e595f361fd709e9d550f352cf156a2342ca3f.tar.gz
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
Diffstat (limited to 'sys/kern/vfs_acl.c')
-rw-r--r--sys/kern/vfs_acl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/vfs_acl.c b/sys/kern/vfs_acl.c
index 2ae39e0..915f12d 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)
OpenPOWER on IntegriCloud