lockd: Update the NLMv1 nlm_res arguments decoder to use struct xdr_stream

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
Chuck Lever 2021-06-03 16:51:28 -04:00 committed by J. Bruce Fields
parent c27045d302
commit 16ddcabe62

View File

@ -299,6 +299,20 @@ nlmsvc_decode_unlockargs(struct svc_rqst *rqstp, __be32 *p)
return 1; return 1;
} }
int
nlmsvc_decode_res(struct svc_rqst *rqstp, __be32 *p)
{
struct xdr_stream *xdr = &rqstp->rq_arg_stream;
struct nlm_res *resp = rqstp->rq_argp;
if (!svcxdr_decode_cookie(xdr, &resp->cookie))
return 0;
if (!svcxdr_decode_stats(xdr, &resp->status))
return 0;
return 1;
}
int int
nlmsvc_encode_testres(struct svc_rqst *rqstp, __be32 *p) nlmsvc_encode_testres(struct svc_rqst *rqstp, __be32 *p)
{ {
@ -379,17 +393,6 @@ nlmsvc_decode_reboot(struct svc_rqst *rqstp, __be32 *p)
return xdr_argsize_check(rqstp, p); return xdr_argsize_check(rqstp, p);
} }
int
nlmsvc_decode_res(struct svc_rqst *rqstp, __be32 *p)
{
struct nlm_res *resp = rqstp->rq_argp;
if (!(p = nlm_decode_cookie(p, &resp->cookie)))
return 0;
resp->status = *p++;
return xdr_argsize_check(rqstp, p);
}
int int
nlmsvc_encode_void(struct svc_rqst *rqstp, __be32 *p) nlmsvc_encode_void(struct svc_rqst *rqstp, __be32 *p)
{ {