]> git.hungrycats.org Git - linux/commit
ALSA: usb-audio: avoid integer overflow in create_fixed_stream_quirk()
authorXi Wang <xi.wang@gmail.com>
Tue, 14 Feb 2012 10:18:48 +0000 (05:18 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 7 Jun 2013 19:46:48 +0000 (12:46 -0700)
commit93a327fcdef0c9e089ba7b347780cf9eaa92677f
tree79da5eb7b8f9628106eee38af666d6967203dfde
parent44f059fb742aac78cffdab5e0d8fe0c9910c1ded
ALSA: usb-audio: avoid integer overflow in create_fixed_stream_quirk()

commit 8866f405efd4171f9d9c91901d2dd02f01bacb60 upstream.

A malicious USB device could feed in a large nr_rates value.  This would
cause the subsequent call to kmemdup() to allocate a smaller buffer than
expected, leading to out-of-bounds access.

This patch validates the nr_rates value and reuses the limit introduced
in commit 4fa0e81b ("ALSA: usb-audio: fix possible hang and overflow
in parse_uac2_sample_rate_range()").

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/usb/card.h
sound/usb/format.c
sound/usb/quirks.c