diff options
author | Vasiliy Kulikov <[email protected]> | 2010-10-26 14:22:15 -0700 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2010-10-26 16:52:11 -0700 |
commit | dae512edc6e945e127f0848aa757055265d70aa2 (patch) | |
tree | a1e903640fc4c5b9aea63004ecfd1d5ee9916e02 | |
parent | aaaddfe0b3bb449b8734bf29bbd36141076e5277 (diff) |
drivers/char/hpet.c: fix information leak to userland
Structure info is copied to userland with some padding fields unitialized.
It leads to leaking of stack memory.
[[email protected]: remove now-unneeded zeroing of info->hi_ireqfreq]
Signed-off-by: Vasiliy Kulikov <[email protected]>
Cc: Clemens Ladisch <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
-rw-r--r-- | drivers/char/hpet.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c index fcb5f0d6ce70..55b8667f739f 100644 --- a/drivers/char/hpet.c +++ b/drivers/char/hpet.c @@ -596,11 +596,10 @@ hpet_ioctl_common(struct hpet_dev *devp, int cmd, unsigned long arg, break; case HPET_INFO: { + memset(info, 0, sizeof(*info)); if (devp->hd_ireqfreq) info->hi_ireqfreq = hpet_time_div(hpetp, devp->hd_ireqfreq); - else - info->hi_ireqfreq = 0; info->hi_flags = readq(&timer->hpet_config) & Tn_PER_INT_CAP_MASK; info->hi_hpet = hpetp->hp_which; |