diff options
author | Cong Wang <amwang@redhat.com> | 2013-07-03 15:01:12 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-03 16:07:25 -0700 |
commit | 8b0d77f13192678019f07cbc6b3338d6d91f1cf4 (patch) | |
tree | 3b5aaa1ac59486d6a507be5618d23815f7890ee8 /block/compat_ioctl.c | |
parent | 31bd8fbb41b1fdf61f80e3e506574b43fad5e478 (diff) | |
download | lwn-8b0d77f13192678019f07cbc6b3338d6d91f1cf4.tar.gz lwn-8b0d77f13192678019f07cbc6b3338d6d91f1cf4.zip |
block/compat_ioctl.c: do not leak info to user-space
There is a hole in struct hd_geometry, so we have to zero the struct on
stack before copying it to user-space.
Signed-off-by: Cong Wang <amwang@redhat.com>
Cc: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'block/compat_ioctl.c')
-rw-r--r-- | block/compat_ioctl.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/block/compat_ioctl.c b/block/compat_ioctl.c index 7c668c8a6f95..7e5d474dc6ba 100644 --- a/block/compat_ioctl.c +++ b/block/compat_ioctl.c @@ -59,6 +59,7 @@ static int compat_hdio_getgeo(struct gendisk *disk, struct block_device *bdev, if (!disk->fops->getgeo) return -ENOTTY; + memset(&geo, 0, sizeof(geo)); /* * We need to set the startsect first, the driver may * want to override it. |