On x86_64 there is a 4 byte hole between ->recv_type and ->addr.
Signed-off-by: Dan Carpenter <[email protected]>
---
v2: fixed the changelog a little. Also added LKML because the
openipmi is a moderated list (and the moderator thought my email was
spam).
diff --git a/drivers/char/ipmi/ipmi_devintf.c b/drivers/char/ipmi/ipmi_devintf.c
index 9eb360f..8e306ac 100644
--- a/drivers/char/ipmi/ipmi_devintf.c
+++ b/drivers/char/ipmi/ipmi_devintf.c
@@ -810,6 +810,7 @@ static long compat_ipmi_ioctl(struct file *filep, unsigned int cmd,
struct ipmi_recv __user *precv64;
struct ipmi_recv recv64;
+ memset(&recv64, 0, sizeof(recv64));
if (get_compat_ipmi_recv(&recv64, compat_ptr(arg)))
return -EFAULT;
On 05/31/2013 07:46 AM, Dan Carpenter wrote:
> On x86_64 there is a 4 byte hole between ->recv_type and ->addr.
Got it, in my tree now. Thanks.
>
> Signed-off-by: Dan Carpenter <[email protected]>
> ---
> v2: fixed the changelog a little. Also added LKML because the
> openipmi is a moderated list (and the moderator thought my email was
> spam).
I apologize, the list gets a lot of spam, and I must have made a mistake.
-corey
>
> diff --git a/drivers/char/ipmi/ipmi_devintf.c b/drivers/char/ipmi/ipmi_devintf.c
> index 9eb360f..8e306ac 100644
> --- a/drivers/char/ipmi/ipmi_devintf.c
> +++ b/drivers/char/ipmi/ipmi_devintf.c
> @@ -810,6 +810,7 @@ static long compat_ipmi_ioctl(struct file *filep, unsigned int cmd,
> struct ipmi_recv __user *precv64;
> struct ipmi_recv recv64;
>
> + memset(&recv64, 0, sizeof(recv64));
> if (get_compat_ipmi_recv(&recv64, compat_ptr(arg)))
> return -EFAULT;
>