| From ad155712bb1ea2151944cf06a0e08c315c70c1e3 Mon Sep 17 00:00:00 2001 |
| From: xidongwang <wangxidong_97@163.com> |
| Date: Sun, 5 Jul 2020 20:27:38 -0700 |
| Subject: ALSA: opl3: fix infoleak in opl3 |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: xidongwang <wangxidong_97@163.com> |
| |
| 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> |
| |
| --- |
| sound/drivers/opl3/opl3_synth.c | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| --- a/sound/drivers/opl3/opl3_synth.c |
| +++ b/sound/drivers/opl3/opl3_synth.c |
| @@ -91,6 +91,8 @@ int snd_opl3_ioctl(struct snd_hwdep * hw |
| { |
| 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))) |