ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks
authorTakashi Iwai <tiwai@suse.de>
Wed, 23 Dec 2020 17:45:57 +0000 (18:45 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 12 Jan 2021 18:47:56 +0000 (19:47 +0100)
commit34cf6eedfa7ec0f2f6d4d1bcc9bcdcdb31ab7c9b
tree0ddb1379c4c34e074f34342855ed4f8ea875c572
parentdbe90bed2d5476c1979218003f2c473d673736d7
ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks

commit c06ccf3ebb7503706ea49fd248e709287ef385a3 upstream.

The calculation of in_cables and out_cables bitmaps are done with the
bit shift by the value from the descriptor, which is an arbitrary
value, and can lead to UBSAN shift-out-of-bounds warnings.

Fix it by filtering the bad descriptor values with the check of the
upper bound 0x10 (the cable bitmaps are 16 bits).

Reported-by: syzbot+92e45ae45543f89e8c88@syzkaller.appspotmail.com
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20201223174557.10249-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/usb/midi.c