2.2.9.9 TS_URB_CONTROL_DESCRIPTOR_REQUEST
This packet represents the URB structure URB_CONTROL_DESCRIPTOR_REQUEST, as specified in [MSFT-W2KDDK] Volume 2, Part 4, Chapter 3. If the URB Function in URB_CONTROL_DESCRIPTOR_REQUEST is URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE, URB_FUNCTION_GET_DESCRIPTOR_FROM_ENDPOINT, or URB_FUNCTION_GET_DESCRIPTOR_FROM_INTERFACE, the packet is sent using the TRANSFER_IN_REQUEST message with the OutputBufferSize field set to TransferBufferLength as defined in URB_CONTROL_DESCRIPTOR_REQUEST; otherwise, the packet is sent using the TRANSFER_OUT_REQUEST message with the OutputBufferSize field set to TransferBufferLength and the OutputBuffer field set to the data in TransferBuffer or TransferBufferMDL as defined in URB_CONTROL_DESCRIPTOR_REQUEST.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
TS_URB_HEADER |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
Index |
DescriptorType |
LanguageId |
|||||||||||||||||||||||||||||
TS_URB_HEADER (8 bytes): A TS_URB_HEADER as specified in section 2.2.9.1.1.
Index (1 byte): A 8-bit unsigned integer. This value is from the Index field in URB_CONTROL_DESCRIPTOR_REQUEST.
DescriptorType (1 byte): A 8-bit unsigned integer. This value is from the DescriptorType field in URB_CONTROL_DESCRIPTOR_REQUEST.
LanguageId (2 bytes): A 16-bit unsigned integer. This value is from the LanguageId field in URB_CONTROL_DESCRIPTOR_REQUEST.