NFSD: Replace READ* macros in nfsd4_decode_rename()
authorChuck Lever <chuck.lever@oracle.com>
Wed, 4 Nov 2020 20:05:58 +0000 (15:05 -0500)
committerChuck Lever <chuck.lever@oracle.com>
Mon, 30 Nov 2020 19:46:39 +0000 (14:46 -0500)
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/nfs4xdr.c

index 71409a7..08b909b 100644 (file)
@@ -1261,22 +1261,12 @@ nfsd4_decode_remove(struct nfsd4_compoundargs *argp, struct nfsd4_remove *remove
 static __be32
 nfsd4_decode_rename(struct nfsd4_compoundargs *argp, struct nfsd4_rename *rename)
 {
-       DECODE_HEAD;
+       __be32 status;
 
-       READ_BUF(4);
-       rename->rn_snamelen = be32_to_cpup(p++);
-       READ_BUF(rename->rn_snamelen);
-       SAVEMEM(rename->rn_sname, rename->rn_snamelen);
-       READ_BUF(4);
-       rename->rn_tnamelen = be32_to_cpup(p++);
-       READ_BUF(rename->rn_tnamelen);
-       SAVEMEM(rename->rn_tname, rename->rn_tnamelen);
-       if ((status = check_filename(rename->rn_sname, rename->rn_snamelen)))
-               return status;
-       if ((status = check_filename(rename->rn_tname, rename->rn_tnamelen)))
+       status = nfsd4_decode_component4(argp, &rename->rn_sname, &rename->rn_snamelen);
+       if (status)
                return status;
-
-       DECODE_TAIL;
+       return nfsd4_decode_component4(argp, &rename->rn_tname, &rename->rn_tnamelen);
 }
 
 static __be32