]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
dm ioctl: prevent stack leak in dm ioctl call
authorAdrian Salido <salidoa@google.com>
Thu, 27 Apr 2017 17:32:55 +0000 (10:32 -0700)
committerThadeu Lima de Souza Cascardo <cascardo@canonical.com>
Wed, 17 May 2017 16:39:29 +0000 (13:39 -0300)
commit0a02779de33c42e001597f6887df930ae802b1b2
tree0a82dffc0812eaef8d8af545585655f6bf4b76fe
parenta0e550031a1153fd52815e8a7d990ae43ff6203b
dm ioctl: prevent stack leak in dm ioctl call

BugLink: http://bugs.launchpad.net/bugs/1689258
commit 4617f564c06117c7d1b611be49521a4430042287 upstream.

When calling a dm ioctl that doesn't process any data
(IOCTL_FLAGS_NO_PARAMS), the contents of the data field in struct
dm_ioctl are left initialized.  Current code is incorrectly extending
the size of data copied back to user, causing the contents of kernel
stack to be leaked to user.  Fix by only copying contents before data
and allow the functions processing the ioctl to override.

Signed-off-by: Adrian Salido <salidoa@google.com>
Reviewed-by: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
drivers/md/dm-ioctl.c