From 9ab44ee166836e075a9d7a786f2ad75ba70112bb Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Wed, 1 Aug 2012 14:21:12 -0400 Subject: [PATCH] --- yaml --- r: 333116 b: refs/heads/master c: 13fe4ba1b64c099843c75b4f0633ad30a4526637 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/nfs/nfs4xdr.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index edeb3c474bcf..e0ab8030f6f5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8a9a8b8332b92b13316cf49685b5dc5257cfe115 +refs/heads/master: 13fe4ba1b64c099843c75b4f0633ad30a4526637 diff --git a/trunk/fs/nfs/nfs4xdr.c b/trunk/fs/nfs/nfs4xdr.c index 8dba6bd48557..a756349b0fa4 100644 --- a/trunk/fs/nfs/nfs4xdr.c +++ b/trunk/fs/nfs/nfs4xdr.c @@ -5642,7 +5642,8 @@ static int decode_getdeviceinfo(struct xdr_stream *xdr, * and places the remaining xdr data in xdr_buf->tail */ 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. */ p = xdr_inline_decode(xdr, 4);