diff options
author | tmm <tmm@FreeBSD.org> | 2001-04-23 22:52:26 +0000 |
---|---|---|
committer | tmm <tmm@FreeBSD.org> | 2001-04-23 22:52:26 +0000 |
commit | 901e595f361fd709e9d550f352cf156a2342ca3f (patch) | |
tree | d28a7c09b8340a972d5356fd4f76b2feee9fd584 /sys/kern/vfs_acl.c | |
parent | 152824577f3549e83e22961422f30fb5ae53782c (diff) | |
download | FreeBSD-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.c | 2 |
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) |