]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
NFSD: Replace READ* macros in nfsd4_decode_open_confirm()
authorChuck Lever <chuck.lever@oracle.com>
Tue, 3 Nov 2020 19:18:57 +0000 (14:18 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Jun 2024 12:52:38 +0000 (14:52 +0200)
[ Upstream commit 06bee693a1f1cb774b91000f05a6e183c257d8e9 ]

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/nfsd/nfs4xdr.c

index 2de54e84a3ab0f4215a8706190a9722418477f20..7b6fb11cdc809cada58383bc5f6889cc0608febe 100644 (file)
@@ -1155,18 +1155,18 @@ nfsd4_decode_open(struct nfsd4_compoundargs *argp, struct nfsd4_open *open)
 static __be32
 nfsd4_decode_open_confirm(struct nfsd4_compoundargs *argp, struct nfsd4_open_confirm *open_conf)
 {
-       DECODE_HEAD;
+       __be32 status;
 
        if (argp->minorversion >= 1)
                return nfserr_notsupp;
 
-       status = nfsd4_decode_stateid(argp, &open_conf->oc_req_stateid);
+       status = nfsd4_decode_stateid4(argp, &open_conf->oc_req_stateid);
        if (status)
                return status;
-       READ_BUF(4);
-       open_conf->oc_seqid = be32_to_cpup(p++);
+       if (xdr_stream_decode_u32(argp->xdr, &open_conf->oc_seqid) < 0)
+               return nfserr_bad_xdr;
 
-       DECODE_TAIL;
+       return nfs_ok;
 }
 
 static __be32