diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-04-10 09:26:35 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-05-01 01:17:07 -0400 |
commit | 8d5658c949e6d89edc579a1f112aeee3bc232a8e (patch) | |
tree | f206d3f6809eeb0ca23c1999cf79aa294968b113 /include/linux | |
parent | c63c7b051395368573779c8309aa5c990dcf2f96 (diff) |
NFS: Fix a buffer overflow in the allocation of struct nfs_read/writedata
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/nfs_fs.h | 4 | ||||
-rw-r--r-- | include/linux/nfs_page.h | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h index e9ae0c6e2c62..0543439a97af 100644 --- a/include/linux/nfs_fs.h +++ b/include/linux/nfs_fs.h | |||
@@ -455,7 +455,7 @@ nfs_have_writebacks(struct inode *inode) | |||
455 | /* | 455 | /* |
456 | * Allocate nfs_write_data structures | 456 | * Allocate nfs_write_data structures |
457 | */ | 457 | */ |
458 | extern struct nfs_write_data *nfs_writedata_alloc(size_t len); | 458 | extern struct nfs_write_data *nfs_writedata_alloc(unsigned int npages); |
459 | 459 | ||
460 | /* | 460 | /* |
461 | * linux/fs/nfs/read.c | 461 | * linux/fs/nfs/read.c |
@@ -469,7 +469,7 @@ extern void nfs_readdata_release(void *data); | |||
469 | /* | 469 | /* |
470 | * Allocate nfs_read_data structures | 470 | * Allocate nfs_read_data structures |
471 | */ | 471 | */ |
472 | extern struct nfs_read_data *nfs_readdata_alloc(size_t len); | 472 | extern struct nfs_read_data *nfs_readdata_alloc(unsigned int npages); |
473 | 473 | ||
474 | /* | 474 | /* |
475 | * linux/fs/nfs3proc.c | 475 | * linux/fs/nfs3proc.c |
diff --git a/include/linux/nfs_page.h b/include/linux/nfs_page.h index e556e57ef7ad..8e9e7bceda48 100644 --- a/include/linux/nfs_page.h +++ b/include/linux/nfs_page.h | |||
@@ -55,7 +55,7 @@ struct nfs_pageio_descriptor { | |||
55 | unsigned int pg_base; | 55 | unsigned int pg_base; |
56 | 56 | ||
57 | struct inode *pg_inode; | 57 | struct inode *pg_inode; |
58 | int (*pg_doio)(struct inode *, struct list_head *, size_t, int); | 58 | int (*pg_doio)(struct inode *, struct list_head *, unsigned int, size_t, int); |
59 | int pg_ioflags; | 59 | int pg_ioflags; |
60 | int pg_error; | 60 | int pg_error; |
61 | }; | 61 | }; |
@@ -75,7 +75,7 @@ extern int nfs_scan_list(struct nfs_inode *nfsi, struct list_head *head, struct | |||
75 | unsigned long idx_start, unsigned int npages); | 75 | unsigned long idx_start, unsigned int npages); |
76 | extern void nfs_pageio_init(struct nfs_pageio_descriptor *desc, | 76 | extern void nfs_pageio_init(struct nfs_pageio_descriptor *desc, |
77 | struct inode *inode, | 77 | struct inode *inode, |
78 | int (*doio)(struct inode *, struct list_head *, size_t, int), | 78 | int (*doio)(struct inode *, struct list_head *, unsigned int, size_t, int), |
79 | size_t bsize, | 79 | size_t bsize, |
80 | int how); | 80 | int how); |
81 | extern int nfs_pageio_add_request(struct nfs_pageio_descriptor *, | 81 | extern int nfs_pageio_add_request(struct nfs_pageio_descriptor *, |