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 19:18:20 +0000 (20:18 +0100)
commit88eaa6c077f8662d31fa4674a57ee1cf2adc606f
treefb7b890e8ee42d6964518a3ee429ec8d45515810
parent0a5b28c99dc45ee7bb16cd8e168e3bd561fc050d
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