USB: potential rndis host fix To some more testing... Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
diff --git a/drivers/net/usb/rndis_host.c b/drivers/net/usb/rndis_host.c index 7b3739b..c7f2f5a 100644 --- a/drivers/net/usb/rndis_host.c +++ b/drivers/net/usb/rndis_host.c
@@ -507,6 +507,12 @@ int rndis_rx_fixup(struct usbnet *dev, struct sk_buff *skb) struct sk_buff *skb2; u32 msg_type, msg_len, data_offset, data_len; + if (skb->len < 4*4) { + netdev_dbg(dev->net, "invalid size for rndis message, len %d\n", + skb->len); + return 0; + } + msg_type = le32_to_cpu(hdr->msg_type); msg_len = le32_to_cpu(hdr->msg_len); data_offset = le32_to_cpu(hdr->data_offset);