summaryrefslogtreecommitdiff
path: root/fs/nfs/nfs4xdr.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2010-10-24 21:14:02 +0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2010-10-24 21:14:02 +0400
commit4f082222fad3c8471abe0c8e8f18c72f335a34c7 (patch)
treeb5c5eea011910f7b08991cb3779cc0eae9ae2598 /fs/nfs/nfs4xdr.c
parent3201f3dd7370f2d29dfb689ae16f8f5d4066cc33 (diff)
downloadlinux-4f082222fad3c8471abe0c8e8f18c72f335a34c7.tar.xz
NFSv4: nfs4_decode_dirent must clear entry->fattr->valid
Otherwise, we may end up reading uninitialised data from the resulting struct nfs_fattr. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4xdr.c')
-rw-r--r--fs/nfs/nfs4xdr.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c
index 707975eebb5d..9bf5e66d11db 100644
--- a/fs/nfs/nfs4xdr.c
+++ b/fs/nfs/nfs4xdr.c
@@ -5815,6 +5815,7 @@ __be32 *nfs4_decode_dirent(struct xdr_stream *xdr, struct nfs_entry *entry,
* since glibc seems to choke on it...)
*/
entry->ino = 1;
+ entry->fattr->valid = 0;
len = ntohl(*p++); /* bitmap length */
if (len-- > 0) {