summaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4xdr.c
diff options
context:
space:
mode:
authorJ. Bruce Fields2005-10-13 22:54:27 +0200
committerTrond Myklebust2005-10-19 08:19:41 +0200
commit8c233cf9c2ad6f49df753bdce84fddbf00bf6a75 (patch)
treec2d0e2d58e0fe1c2ab332802caa77046fcaac348 /fs/nfs/nfs4xdr.c
parentRPC: stops the release_pipe() funtion from being called twice (diff)
downloadkernel-qcow2-linux-8c233cf9c2ad6f49df753bdce84fddbf00bf6a75.tar.gz
kernel-qcow2-linux-8c233cf9c2ad6f49df753bdce84fddbf00bf6a75.tar.xz
kernel-qcow2-linux-8c233cf9c2ad6f49df753bdce84fddbf00bf6a75.zip
NFSv4: handle no acl attr
Stop handing garbage to userspace in the case where a weird server clears the acl bit in the getattr return (despite the fact that they've already claimed acl support.) Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4xdr.c')
-rw-r--r--fs/nfs/nfs4xdr.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c
index c5c75235c5b8..cd762648fa9a 100644
--- a/fs/nfs/nfs4xdr.c
+++ b/fs/nfs/nfs4xdr.c
@@ -3255,7 +3255,8 @@ static int decode_getacl(struct xdr_stream *xdr, struct rpc_rqst *req,
if (attrlen <= *acl_len)
xdr_read_pages(xdr, attrlen);
*acl_len = attrlen;
- }
+ } else
+ status = -EOPNOTSUPP;
out:
return status;