// usbioctl.h
// CTL_CODE(0x0022, 0x114, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_USB_GET_HUB_CAPABILITIES_EX 0x00220450
View the official Windows Driver Kit DDI referenceNo description available.
The IOCTL_USB_GET_HUB_CAPABILITIES_EX I/O control request retrieves the capabilities of a USB hub.
IOCTL_USB_GET_HUB_CAPABILITIES_EX is a user-mode I/O control request. This request targets the USB hub device (GUID_DEVINTERFACE_USB_HUB).
The AssociatedIrp.SystemBuffer member points to a user-allocated buffer.
The buffer length equals sizeof(USB_HUB_CAPABILITIES_EX).
AssociatedIrp.SystemBuffer points to a user-allocated USB_HUB_CAPABILITIES_EX structure. On output, this structure describes the hub capabilities.
The Parameters.DeviceIoControl.OutputBufferLength member indicates the size, in bytes, of the data that is returned at SystemBuffer, or sizeof(USB_HUB_CAPABILITIES_EX).
The USB stack sets Irp->IoStatus.Status to STATUS_SUCCESS if the request is successful. Otherwise, the USB stack sets Status to the appropriate error condition, such as STATUS_INVALID_PARAMETER or STATUS_INSUFFICIENT_RESOURCES. If the hub has not been started or is not functional, the request returns STATUS_UNSUCCESSFUL.