summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorxidongwang <wangxidong_97@163.com>2020-07-05 20:27:38 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-07-22 09:22:17 +0200
commit411c64c5c7761048e15c67e4407bf81bcc466bec (patch)
tree3a85ab38dd831efd9e4406f1b4ac2f064b586b4e /sound
parent0ca1fec1b45216158258c053d7898fd3245e6a7c (diff)
ALSA: opl3: fix infoleak in opl3
commit ad155712bb1ea2151944cf06a0e08c315c70c1e3 upstream. The stack object “info” in snd_opl3_ioctl() has a leaking problem. It has 2 padding bytes which are not initialized and leaked via “copy_to_user”. Signed-off-by: xidongwang <wangxidong_97@163.com> Cc: <stable@vger.kernel.org> Link: https://lore.kernel.org/r/1594006058-30362-1-git-send-email-wangxidong_97@163.com Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/drivers/opl3/opl3_synth.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/drivers/opl3/opl3_synth.c b/sound/drivers/opl3/opl3_synth.c
index 42920a243328..3f94746d587a 100644
--- a/sound/drivers/opl3/opl3_synth.c
+++ b/sound/drivers/opl3/opl3_synth.c
@@ -104,6 +104,8 @@ int snd_opl3_ioctl(struct snd_hwdep * hw, struct file *file,
{
struct snd_dm_fm_info info;
+ memset(&info, 0, sizeof(info));
+
info.fm_mode = opl3->fm_mode;
info.rhythm = opl3->rhythm;
if (copy_to_user(argp, &info, sizeof(struct snd_dm_fm_info)))