[PATCH] NFS: Fix xdr decoding error of NFSv4 SETATTR response

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Fred Isaman <iisaman@xxxxxxxxxxxxxx>

A non-OK response to setattr has a bitmap associated with it
that was not being parsed.  Note it is still being ignored.

Signed-off-by: Fred Isaman <iisaman@xxxxxxxxxxxxxx>
Signed-off-by: Benny Halevy <bhalevy@xxxxxxxxxxx>
---

Trond, this patch fixes an existing bug in the nfsv4 code base.
Since nobody complained about it so far it is not urgent for
for 2.6.30, but it would be nice to get it upstream if you
send more fixes for 2.6.30 anyway.

Thanks,

Benny

 fs/nfs/nfs4xdr.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c
index 80af0ae..6c2e098 100644
--- a/fs/nfs/nfs4xdr.c
+++ b/fs/nfs/nfs4xdr.c
@@ -4110,12 +4110,11 @@ static int decode_setattr(struct xdr_stream *xdr)
 	int status;
 
 	status = decode_op_hdr(xdr, OP_SETATTR);
-	if (status)
-		return status;
+	/* Attribute array is sent even in error case */
 	READ_BUF(4);
 	READ32(bmlen);
 	READ_BUF(bmlen << 2);
-	return 0;
+	return status;
 }
 
 static int decode_setclientid(struct xdr_stream *xdr, struct nfs_client *clp)
-- 
1.6.2.1

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux