diff options
author | Anthony Liguori | 2011-05-05 20:04:57 +0200 |
---|---|---|
committer | Anthony Liguori | 2011-05-05 20:04:57 +0200 |
commit | a69fb35079f682f99dd4d077b76232763d832d42 (patch) | |
tree | 5275bd5b172eea2db7b9490d49c0d43de174e807 /hw/usb.c | |
parent | spice: drop obsolete iothread locking (diff) | |
parent | usb: mass storage fix (diff) | |
download | qemu-a69fb35079f682f99dd4d077b76232763d832d42.tar.gz qemu-a69fb35079f682f99dd4d077b76232763d832d42.tar.xz qemu-a69fb35079f682f99dd4d077b76232763d832d42.zip |
Merge remote-tracking branch 'kraxel/usb.7.pull' into staging
Diffstat (limited to 'hw/usb.c')
-rw-r--r-- | hw/usb.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -93,6 +93,12 @@ static int do_token_setup(USBDevice *s, USBPacket *p) s->setup_len = ret; s->setup_state = SETUP_STATE_DATA; } else { + if (s->setup_len > sizeof(s->data_buf)) { + fprintf(stderr, + "usb_generic_handle_packet: ctrl buffer too small (%d > %zu)\n", + s->setup_len, sizeof(s->data_buf)); + return USB_RET_STALL; + } if (s->setup_len == 0) s->setup_state = SETUP_STATE_ACK; else |