From 064018fbf1bb775428099586e560334d94c44733 Mon Sep 17 00:00:00 2001 From: Michael Lotz Date: Mon, 1 Sep 2014 00:12:37 +0200 Subject: [PATCH] UHCI: Reject request debug transfers on control pipes. Requests aren't handled in the debug transfer code path and would end up in wrongly constructed descriptor chains. --- src/add-ons/kernel/busses/usb/uhci.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/add-ons/kernel/busses/usb/uhci.cpp b/src/add-ons/kernel/busses/usb/uhci.cpp index 9c93c0e825..3a57c73268 100644 --- a/src/add-ons/kernel/busses/usb/uhci.cpp +++ b/src/add-ons/kernel/busses/usb/uhci.cpp @@ -667,6 +667,9 @@ UHCI::SubmitTransfer(Transfer *transfer) status_t UHCI::StartDebugTransfer(Transfer *transfer) { + if ((transfer->TransferPipe()->Type() & USB_OBJECT_CONTROL_PIPE) != 0) + return B_UNSUPPORTED; + static transfer_data transferData; transferData.first_descriptor = NULL; transferData.transfer_queue = NULL;