// usbioctl.h
// CTL_CODE(0x0022, 0x000, METHOD_NEITHER, FILE_ANY_ACCESS)
#define IOCTL_INTERNAL_USB_SUBMIT_URB 0x00220003
View the official Windows Driver Kit DDI reference
No description available.
The IOCTL_INTERNAL_USB_SUBMIT_URB I/O control request is used by drivers to submit an URB to the bus driver.
IOCTL_INTERNAL_USB_SUBMIT_URB is a kernel-mode I/O control request. This request targets the USB hub PDO.
IRP_MJ_INTERNAL_DEVICE_CONTROL
Parameters.Others.Argument1 points to the URB, a variable-length structure. The UrbHeader.Function member of the URB specifies the URB type. The length of URB, as well as the meaning of any additional members depends on the value of UrbHeader.Function. See URB for details.
The UrbHeader.Length member specifies the size in bytes of the URB.
Parameters.Others.Argument1 points to the URB structure. The UrbHeader.Status contains a USB status code for the requested operation. Any additional output depends on the UrbHeader.Function member of the URB submitted. See URB for details.
The UrbHeader.Length member specifies the size in bytes of the URB.
The lower-level drivers will set Irp->IoStatus.Status to STATUS_SUCCESS if the URB can be successfully processed. Otherwise, the bus driver will set it to the appropriate error condition, such as STATUS_INVALID_PARAMETER, or STATUS_INSUFFICIENT_RESOURCES.