diff options
Diffstat (limited to 'libusb/os/windows_common.h')
-rw-r--r-- | libusb/os/windows_common.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libusb/os/windows_common.h b/libusb/os/windows_common.h index 4582ce4..0c0ff4b 100644 --- a/libusb/os/windows_common.h +++ b/libusb/os/windows_common.h @@ -131,6 +131,7 @@ typedef LONG USBD_STATUS; #define USBD_SUCCESS(Status) ((USBD_STATUS)(Status) >= 0) +#define USBD_STATUS_STALL_PID ((USBD_STATUS)0xC0000004L) #define USBD_STATUS_ENDPOINT_HALTED ((USBD_STATUS)0xC0000030L) #define USBD_STATUS_TIMEOUT ((USBD_STATUS)0xC0006000L) #define USBD_STATUS_DEVICE_GONE ((USBD_STATUS)0xC0007000L) @@ -257,6 +258,13 @@ struct winusb_device_priv { int current_altsetting; bool restricted_functionality; // indicates if the interface functionality is restricted // by Windows (eg. HID keyboards or mice cannot do R/W) + uint8_t num_associated_interfaces; // If non-zero, the interface is part of a grouped + // set of associated interfaces (defined by an IAD) + // and this is the number of interfaces within the + // associated group (bInterfaceCount in IAD). + uint8_t first_associated_interface; // For associated interfaces, this is the index of + // the first interface (bFirstInterface in IAD) for + // the grouped set of associated interfaces. } usb_interface[USB_MAXINTERFACES]; struct hid_device_priv *hid; PUSB_CONFIGURATION_DESCRIPTOR *config_descriptor; // list of pointers to the cached config descriptors |