linux/drivers/net/usb
Oliver Neukum 69560efa00 CDC-NCM: avoid overflow in sanity checking
commit 8d2b1a1ec9 upstream.

A broken device may give an extreme offset like 0xFFF0
and a reasonable length for a fragment. In the sanity
check as formulated now, this will create an integer
overflow, defeating the sanity check. Both offset
and offset + len need to be checked in such a manner
that no overflow can occur.
And those quantities should be unsigned.

Signed-off-by: Oliver Neukum <oneukum@suse.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-03-02 11:42:47 +01:00
..
aqc111.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
aqc111.h
asix_common.c net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() 2020-08-27 07:37:19 -07:00
asix_devices.c
asix.h
ax88172a.c
ax88179_178a.c net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup 2022-02-16 12:54:28 +01:00
catc.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
cdc_eem.c net: cdc_eem: fix tx fixup skb leak 2021-06-23 14:42:47 +02:00
cdc_ether.c USB: zaurus: support another broken Zaurus 2022-03-02 11:42:47 +01:00
cdc_mbim.c net: usb: cdc_mbim: avoid altsetting toggling for Telit LN920 2021-09-22 12:28:01 +02:00
cdc_ncm.c CDC-NCM: avoid overflow in sanity checking 2022-03-02 11:42:47 +01:00
cdc_subset.c
cdc-phonet.c net: cdc-phonet: fix data-interface release on probe failure 2021-03-30 14:32:02 +02:00
ch9200.c
cx82310_eth.c cx82310_eth: fix error return code in cx82310_bind() 2020-11-16 15:23:44 -08:00
dm9601.c net: usb: dm9601: Add USB ID of Keenetic Plus DSL 2020-09-01 15:35:23 -07:00
gl620a.c
hso.c usb: hso: remove the bailout parameter 2021-10-06 15:56:02 +02:00
huawei_cdc_ncm.c
int51x1.c
ipheth.c ipheth: fix EOVERFLOW in ipheth_rcvbulk_callback 2022-02-05 12:37:56 +01:00
kalmia.c
kaweth.c net: usb: kaweth: Remove last user of kaweth_control() 2020-09-29 14:02:54 -07:00
Kconfig lan78xx: select CRC32 2021-10-27 09:56:48 +02:00
lan78xx.c net: usb: lan78xx: add Allied Telesis AT29M2-AF 2021-12-29 12:25:53 +01:00
lan78xx.h
lg-vl600.c
Makefile
mcs7830.c net: mcs7830: handle usb read errors properly 2022-01-27 10:54:04 +01:00
net1080.c net: usb: net1080: Remove in_interrupt() comment 2020-09-29 14:02:54 -07:00
pegasus.c net: usb: pegasus: Do not drop long Ethernet frames 2022-01-05 12:40:30 +01:00
pegasus.h
plusb.c
qmi_wwan.c net: usb: qmi_wwan: Add support for Dell DW5829e 2022-02-23 12:01:06 +01:00
r8152.c r8152: fix writing USB_BP2_EN 2021-08-26 08:35:51 -04:00
rndis_host.c rndis_host: support Hytera digital radios 2022-01-11 15:25:01 +01:00
rtl8150.c net: usb: rtl8150: don't incorrectly assign random MAC addresses 2020-10-18 12:57:30 -07:00
sierra_net.c
smsc75xx.c net: usb: fix possible use-after-free in smsc75xx_bind 2021-06-23 14:42:46 +02:00
smsc75xx.h
smsc95xx.c smsc95xx: fix stalled rx after link change 2021-10-06 15:55:53 +02:00
smsc95xx.h
sr9700.c sr9700: sanity check for packet length 2022-03-02 11:42:47 +01:00
sr9700.h
sr9800.c
sr9800.h
usbnet.c usbnet: fix error return code in usbnet_probe() 2021-11-02 19:48:18 +01:00
zaurus.c USB: zaurus: support another broken Zaurus 2022-03-02 11:42:47 +01:00