[pnfs] [PATCH 3/4] Return NFS4ERR_BAD_XDR instead of NFS4ERR_INVAL on xdr errors.

andros at umich.edu andros at umich.edu
Thu May 31 10:54:16 EDT 2007


From: Andy Adamson <andros at umich.edu>

Signed-off by: Andy Adamson <andros at citi.umich.edu>
---
 fs/nfsd/nfs4xdr.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 329063b..0709586 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -902,7 +902,7 @@ nfsd4_decode_exchange_id(struct nfsd4_compoundargs *argp, struct nfsd4_exchange_
 	READ32(dummy);
 
 	if (dummy > 1)
-		return nfserr_inval;
+		goto xdr_error;
 
 	if (dummy == 1) {
 		READ_BUF(4);
@@ -976,7 +976,7 @@ nfsd4_decode_create_session(struct nfsd4_compoundargs *argp, struct nfsd4_create
 		READ32(sess->fore_channel.rdma_attrs);
 	} else if (sess->fore_channel.nr_rdma_attrs > 1) {
 		dprintk("Too many fore channel attr bitmaps!\n");
-		return nfserr_inval;
+		goto xdr_error;
 	}
 
 	/* Back channel attrs */
@@ -993,7 +993,7 @@ nfsd4_decode_create_session(struct nfsd4_compoundargs *argp, struct nfsd4_create
 		READ32(sess->back_channel.rdma_attrs);
 	} else if (sess->back_channel.nr_rdma_attrs > 1) {
 		dprintk("Too many back channel attr bitmaps!\n");
-		return nfserr_inval;
+		goto xdr_error;
 	}
 
 	READ_BUF(4);
-- 
1.5.0.2



More information about the pNFS mailing list