summaryrefslogtreecommitdiff
path: root/sound/usb/mixer.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2021-06-22 11:06:47 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-07-14 16:52:58 +0200
commit49e5b37fdd0188052c9d9691eabda076ac3e60e3 (patch)
treed77985c64715d8fe98dfa3c4a2e8bfc2705a9456 /sound/usb/mixer.c
parent5ded94e8516d237e3bce627ad97f4c6f05535f2b (diff)
ALSA: usb-audio: Fix OOB access at proc output
commit 362372ceb6556f338e230f2d90af27b47f82365a upstream. At extending the available mixer values for 32bit types, we forgot to add the corresponding entries for the format dump in the proc output. This may result in OOB access. Here adds the missing entries. Fixes: bc18e31c3042 ("ALSA: usb-audio: Fix parameter block size for UAC2 control requests") Cc: <stable@vger.kernel.org> Link: https://lore.kernel.org/r/20210622090647.14021-1-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound/usb/mixer.c')
-rw-r--r--sound/usb/mixer.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c
index f4f8778e907a..7d62791a96dd 100644
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -3241,8 +3241,9 @@ static void snd_usb_mixer_dump_cval(struct snd_info_buffer *buffer,
struct usb_mixer_elem_list *list)
{
struct usb_mixer_elem_info *cval = mixer_elem_list_to_info(list);
- static const char * const val_types[] = {"BOOLEAN", "INV_BOOLEAN",
- "S8", "U8", "S16", "U16"};
+ static const char * const val_types[] = {
+ "BOOLEAN", "INV_BOOLEAN", "S8", "U8", "S16", "U16", "S32", "U32",
+ };
snd_iprintf(buffer, " Info: id=%i, control=%i, cmask=0x%x, "
"channels=%i, type=\"%s\"\n", cval->head.id,
cval->control, cval->cmask, cval->channels,