From: Vasiliy Kulikov Date: Sat, 6 Nov 2010 14:41:35 +0000 (+0300) Subject: usb: misc: sisusbvga: fix information leak to userland X-Git-Tag: v2.6.32.27~61 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=6909d43e26b098f79ea2300ddec56a7c39f5675e;p=karo-tx-linux.git usb: misc: sisusbvga: fix information leak to userland commit 5dc92cf1d0b4b0debbd2e333b83f9746c103533d upstream. Structure sisusb_info is copied to userland with "sisusb_reserved" field uninitialized. It leads to leaking of contents of kernel stack memory. Signed-off-by: Vasiliy Kulikov Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/misc/sisusbvga/sisusb.c b/drivers/usb/misc/sisusbvga/sisusb.c index be41ec35c655..cafbd1514275 100644 --- a/drivers/usb/misc/sisusbvga/sisusb.c +++ b/drivers/usb/misc/sisusbvga/sisusb.c @@ -3008,6 +3008,7 @@ sisusb_ioctl(struct file *file, unsigned int cmd, unsigned long arg) #else x.sisusb_conactive = 0; #endif + memset(x.sisusb_reserved, 0, sizeof(x.sisusb_reserved)); if (copy_to_user((void __user *)arg, &x, sizeof(x))) retval = -EFAULT;