diff options
author | Roman Borisov <ext-roman.borisov@nokia.com> | 2010-10-13 16:54:51 +0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-10-25 02:00:12 +0400 |
commit | 3388bff5cfe91589a912cdc7f00d3aae3aa18adc (patch) | |
tree | d84d4642c70787d44c16dc842e263744dae729e9 /fs/nfs/nfs4xdr.c | |
parent | 55b6e7742d5b25182edf410369379b9727b2e5bc (diff) | |
download | linux-3388bff5cfe91589a912cdc7f00d3aae3aa18adc.tar.xz |
nfs: fix unchecked value
Return value of "decode_attr_bitmap()" was not checked;
Signed-off-by: Roman Borisov <ext-roman.borisov@nokia.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4xdr.c')
-rw-r--r-- | fs/nfs/nfs4xdr.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c index 7131c761d85c..bd2101d918c8 100644 --- a/fs/nfs/nfs4xdr.c +++ b/fs/nfs/nfs4xdr.c @@ -2687,7 +2687,10 @@ out_overflow: static int decode_attr_supported(struct xdr_stream *xdr, uint32_t *bitmap, uint32_t *bitmask) { if (likely(bitmap[0] & FATTR4_WORD0_SUPPORTED_ATTRS)) { - decode_attr_bitmap(xdr, bitmask); + int ret; + ret = decode_attr_bitmap(xdr, bitmask); + if (unlikely(ret < 0)) + return ret; bitmap[0] &= ~FATTR4_WORD0_SUPPORTED_ATTRS; } else bitmask[0] = bitmask[1] = 0; |