diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-06-17 15:47:53 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-07-10 23:40:27 -0400 |
commit | dce34ce298d85b81630401f4feb4bd7ac77fe9c7 (patch) | |
tree | 9caa66cd3f03d500fdef5df290de23695589026d /fs | |
parent | 2aefa104313996d1a9582476cee53d1296c834bf (diff) | |
download | kernel-crypto-dce34ce298d85b81630401f4feb4bd7ac77fe9c7.tar.gz kernel-crypto-dce34ce298d85b81630401f4feb4bd7ac77fe9c7.tar.xz kernel-crypto-dce34ce298d85b81630401f4feb4bd7ac77fe9c7.zip |
NFS: Prevent integer overflow in nfs_scan_list()
Also ensure that nfs_inode ncommit and npages are large enough to represent
all possible values for the number of pages.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfs/pagelist.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfs/pagelist.c b/fs/nfs/pagelist.c index ad90cbe7670..68f6bf12200 100644 --- a/fs/nfs/pagelist.c +++ b/fs/nfs/pagelist.c @@ -425,6 +425,8 @@ int nfs_scan_list(struct nfs_inode *nfsi, req->wb_index, tag); nfs_list_add_request(req, dst); res++; + if (res == INT_MAX) + goto out; } } |