A problem with the NFSv4 server was reported by Andrew Leonard

to freebsd-fs@, where the setfacl of an NFSv4 acl would fail.
This was caused by the VOP_ACLCHECK() call for ZFS replying
EOPNOTSUPP. After discussion with rwatson@, it was determined
that a call to VOP_ACLCHECK() before doing VOP_SETACL() is not
required. This patch fixes the problem by deleting the
VOP_ACLCHECK() call.

Tested by:	Andrew Leonard (previous version)
MFC after:	1 week
This commit is contained in:
Rick Macklem 2012-05-17 21:52:17 +00:00
parent 6f5baf295c
commit f4b9a05a90
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=235568

View file

@ -468,9 +468,7 @@ nfsrv_setacl(vnode_t vp, NFSACL_T *aclp, struct ucred *cred,
error = NFSERR_ATTRNOTSUPP;
goto out;
}
error = VOP_ACLCHECK(vp, ACL_TYPE_NFS4, aclp, cred, p);
if (!error)
error = VOP_SETACL(vp, ACL_TYPE_NFS4, aclp, cred, p);
error = VOP_SETACL(vp, ACL_TYPE_NFS4, aclp, cred, p);
out:
NFSEXITCODE(error);