diff options
| author | Vasiliy Kulikov <segooon@gmail.com> | 2010-10-28 08:31:55 -0400 |
|---|---|---|
| committer | Jens Axboe <jaxboe@fusionio.com> | 2010-10-28 08:31:55 -0400 |
| commit | 7ab5118d7c2be650bc936894f159dc1c597badae (patch) | |
| tree | ca1159b578e40251f79e25acd31a9d668bffece5 | |
| parent | 027b180d7405f2b2df25e2a8b1b796b00f3773cf (diff) | |
block: cciss: fix information leak to userland
Structure IOCTL_Command_struct is copied to userland with
some padding fields at the end of the struct unitialized.
It leads to leaking of contents of kernel stack memory.
Signed-off-by: Vasiliy Kulikov <segooon@gmail.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| -rw-r--r-- | drivers/block/cciss.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index f09e6df15aa7..13d87a031c88 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
| @@ -1184,6 +1184,7 @@ static int cciss_ioctl32_big_passthru(struct block_device *bdev, fmode_t mode, | |||
| 1184 | int err; | 1184 | int err; |
| 1185 | u32 cp; | 1185 | u32 cp; |
| 1186 | 1186 | ||
| 1187 | memset(&arg64, 0, sizeof(arg64)); | ||
| 1187 | err = 0; | 1188 | err = 0; |
| 1188 | err |= | 1189 | err |= |
| 1189 | copy_from_user(&arg64.LUN_info, &arg32->LUN_info, | 1190 | copy_from_user(&arg64.LUN_info, &arg32->LUN_info, |
