mirror of https://gitee.com/openkylin/linux.git
nfsd: fix supported attributes for acl & labels
Oops--in916d2d844a
I moved some constants into an array for convenience, but here I'm accidentally writing to that array. The effect is that if you ever encounter a filesystem lacking support for ACLs or security labels, then all queries of supported attributes will report that attribute as unsupported from then on. Fixes:916d2d844a
"nfsd: clean up supported attribute handling" Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
0c744ea4f7
commit
dcd2086977
|
@ -2440,7 +2440,9 @@ nfsd4_encode_fattr(struct xdr_stream *xdr, struct svc_fh *fhp,
|
|||
p++; /* to be backfilled later */
|
||||
|
||||
if (bmval0 & FATTR4_WORD0_SUPPORTED_ATTRS) {
|
||||
u32 *supp = nfsd_suppattrs[minorversion];
|
||||
u32 supp[3];
|
||||
|
||||
memcpy(supp, nfsd_suppattrs[minorversion], sizeof(supp));
|
||||
|
||||
if (!IS_POSIXACL(dentry->d_inode))
|
||||
supp[0] &= ~FATTR4_WORD0_ACL;
|
||||
|
|
Loading…
Reference in New Issue