NFSv4.1: decode_getdeviceinfo should check xdr_read_pages() return value

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
Trond Myklebust 2012-08-01 14:21:12 -04:00
parent 8a9a8b8332
commit 13fe4ba1b6

View File

@ -5642,7 +5642,8 @@ static int decode_getdeviceinfo(struct xdr_stream *xdr,
* and places the remaining xdr data in xdr_buf->tail * and places the remaining xdr data in xdr_buf->tail
*/ */
pdev->mincount = be32_to_cpup(p); pdev->mincount = be32_to_cpup(p);
xdr_read_pages(xdr, pdev->mincount); /* include space for the length */ if (xdr_read_pages(xdr, pdev->mincount) != pdev->mincount)
goto out_overflow;
/* Parse notification bitmap, verifying that it is zero. */ /* Parse notification bitmap, verifying that it is zero. */
p = xdr_inline_decode(xdr, 4); p = xdr_inline_decode(xdr, 4);