]> git.hungrycats.org Git - linux/commitdiff
NFS: return error from decode_getfh in decode open
authorWeston Andros Adamson <dros@netapp.com>
Thu, 6 Sep 2012 19:54:27 +0000 (15:54 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 2 Oct 2012 17:30:19 +0000 (10:30 -0700)
commit 01913b49cf1dc6409a07dd2a4cc6af2e77f3c410 upstream.

If decode_getfh failed, nfs4_xdr_dec_open would return 0 since the last
decode_* call must have succeeded.

Signed-off-by: Weston Andros Adamson <dros@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfs/nfs4xdr.c

index c54aae364beebd38833151f97328c3edfe7c2337..c8ac9a1461c21b6836cbe24b693dbf013cb792ca 100644 (file)
@@ -6081,7 +6081,8 @@ static int nfs4_xdr_dec_open(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
        status = decode_open(xdr, res);
        if (status)
                goto out;
-       if (decode_getfh(xdr, &res->fh) != 0)
+       status = decode_getfh(xdr, &res->fh);
+       if (status)
                goto out;
        if (decode_getfattr(xdr, res->f_attr, res->server) != 0)
                goto out;