diff options
author | trasz <trasz@FreeBSD.org> | 2009-12-03 13:29:24 +0000 |
---|---|---|
committer | trasz <trasz@FreeBSD.org> | 2009-12-03 13:29:24 +0000 |
commit | 790ed544cff3a0c9f9c1cce6ac526a0569118e2e (patch) | |
tree | 8b49e26e3bc7ec9f0160d974a10a0f46aa2c547a /sys/kern | |
parent | 98a49a66136b100b6da8d23225fb6e19e1bcdd22 (diff) | |
download | FreeBSD-src-790ed544cff3a0c9f9c1cce6ac526a0569118e2e.zip FreeBSD-src-790ed544cff3a0c9f9c1cce6ac526a0569118e2e.tar.gz |
Add change that was somehow missed in r192586. It could manifest by
incorrectly returning EINVAL from acl_valid(3) for applications linked
against pre-8.0 libc.
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/vfs_acl.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/vfs_acl.c b/sys/kern/vfs_acl.c index a6a1ebf..c44bb25 100644 --- a/sys/kern/vfs_acl.c +++ b/sys/kern/vfs_acl.c @@ -173,7 +173,7 @@ acl_copyout(struct acl *kernel_acl, void *user_acl, acl_type_t type) /* * Convert "old" type - ACL_TYPE_{ACCESS,DEFAULT}_OLD - into its "new" - * counterpart. It's required for old (pre-NFS4 ACLs) libc to work + * counterpart. It's required for old (pre-NFSv4 ACLs) libc to work * with new kernel. Fixing 'type' for old binaries with new libc * is being done in lib/libc/posix1e/acl_support.c:_acl_type_unold(). */ @@ -307,7 +307,8 @@ vacl_aclcheck(struct thread *td, struct vnode *vp, acl_type_t type, error = acl_copyin(aclp, inkernelacl, type); if (error != 0) goto out; - error = VOP_ACLCHECK(vp, type, inkernelacl, td->td_ucred, td); + error = VOP_ACLCHECK(vp, acl_type_unold(type), inkernelacl, + td->td_ucred, td); out: acl_free(inkernelacl); return (error); |