From: Hans de Goede <hdego...@redhat.com> So that we don't index endp_table with a negative index.
Signed-off-by: Gerd Hoffmann <kra...@redhat.com> --- usb-linux.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/usb-linux.c b/usb-linux.c index 4c6c284..82c1e7d 100644 --- a/usb-linux.c +++ b/usb-linux.c @@ -1030,6 +1030,11 @@ static int usb_linux_update_endp_table(USBHostDevice *s) } devep = descriptors[i + 2]; + if ((devep & 0x0f) == 0) { + fprintf(stderr, "usb-linux: invalid ep descriptor, ep == 0\n"); + return 1; + } + switch (descriptors[i + 3] & 0x3) { case 0x00: type = USBDEVFS_URB_TYPE_CONTROL; -- 1.7.1