bulwarkid / virtual-fido

A Virtual FIDO2 USB Device
MIT License
1.22k stars 56 forks source link

Doesn't seem to work on Ubuntu 23.10 #26

Open getsnoopy opened 1 year ago

getsnoopy commented 1 year ago

I'm not sure if the program is working, since it doesn't seem to do anything whenever I attempt WebAuthn via a browser. I tried closing and reopening the browser and multiple browsers (Firefox and Chromium) to no avail. This is the output I get when running the demo in verbose mode:

[LOG] Log Level Set: 1
[USBIP] Starting USBIP server...
[USBIP] [CONTROL MESSAGE] usbip.USBIPControlHeader{Version:0x111, CommandCode:0x8003, Status:0x0}

                                   [USBIP] [OP_REP_IMPORT] USBIPOpRepImport{ Header: usbip.USBIPControlHeader{Version:0x111, CommandCode:0x3, Status:0x0}, Device: USBIPDeviceSummaryHeader{ Path: "/device/0", BusId: "2-2", Busnum: 2, Devnum 2, Speed 2, IdVendor: 0, IdProduct: 0, BcdDevice: 0x0, BDeviceClass: 0, BDeviceSubclass: 0, BDeviceProtocol: 0, BConfigurationValue: 0, BNumConfigurations: 1, BNumInterfaces: 1} }

                                               [USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 43, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 64, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x100, WIndex: 0, WLength: 64 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x100, WIndex: 0, WLength: 64 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_DEVICE Index: 0

[USB] DEVICE DESCRIPTOR: usbip.USBDeviceDescriptor{BLength:0x12, BDescriptorType:0x1, BcdUSB:0x110, BDeviceClass:0x0, BDeviceSubclass:0x0, BDeviceProtocol:0x0, BMaxPacketSize:0x40, IdVendor:0x0, IdProduct:0x0, BcdDevice:0x1, IManufacturer:0x1, IProduct:0x2, ISerialNumber:0x3, BNumConfigurations:0x1}

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 43, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0x40, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 44, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 18, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x100, WIndex: 0, WLength: 18 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x100, WIndex: 0, WLength: 18 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_DEVICE Index: 0

[USB] DEVICE DESCRIPTOR: usbip.USBDeviceDescriptor{BLength:0x12, BDescriptorType:0x1, BcdUSB:0x110, BDeviceClass:0x0, BDeviceSubclass:0x0, BDeviceProtocol:0x0, BMaxPacketSize:0x40, IdVendor:0x0, IdProduct:0x0, BcdDevice:0x1, IManufacturer:0x1, IProduct:0x2, ISerialNumber:0x3, BNumConfigurations:0x1}

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 44, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0x12, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 45, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 9, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x200, WIndex: 0, WLength: 9 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x200, WIndex: 0, WLength: 9 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_CONFIGURATION Index: 0

[USB] CONFIGURATION: usbip.USBConfigurationDescriptor{BLength:0x9, BDescriptorType:0x2, WTotalLength:0x29, BNumInterfaces:0x1, BConfigurationValue:0x0, IConfiguration:0x4, BmAttributes:0xc0, BMaxPower:0x0}

INTERFACE: usbip.USBInterfaceDescriptor{BLength:0x9, BDescriptorType:0x4, BInterfaceNumber:0x0, BAlternateSetting:0x0, BNumEndpoints:0x2, BInterfaceClass:0x3, BInterfaceSubclass:0x0, BInterfaceProtocol:0x0, IInterface:0x5}

HID: usbip.USBHIDDescriptor{BLength:0x9, BDescriptorType:0x21, BcdHID:0x101, BCountryCode:0x0, BNumDescriptors:0x1, BClassDescriptorType:0x22, WReportDescriptorLength:0x1e}

[USB] ENDPOINT: usbip.USBEndpointDescriptor{BLength:0x7, BDescriptorType:0x5, BEndpointAddress:0x81, BmAttributes:0x3, WMaxPacketSize:0x40, BInterval:0xff}

[USB] ENDPOINT: usbip.USBEndpointDescriptor{BLength:0x7, BDescriptorType:0x5, BEndpointAddress:0x2, BmAttributes:0x3, WMaxPacketSize:0x40, BInterval:0xff}

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 45, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0x9, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 46, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 41, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x200, WIndex: 0, WLength: 41 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x200, WIndex: 0, WLength: 41 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_CONFIGURATION Index: 0

[USB] CONFIGURATION: usbip.USBConfigurationDescriptor{BLength:0x9, BDescriptorType:0x2, WTotalLength:0x29, BNumInterfaces:0x1, BConfigurationValue:0x0, IConfiguration:0x4, BmAttributes:0xc0, BMaxPower:0x0}

INTERFACE: usbip.USBInterfaceDescriptor{BLength:0x9, BDescriptorType:0x4, BInterfaceNumber:0x0, BAlternateSetting:0x0, BNumEndpoints:0x2, BInterfaceClass:0x3, BInterfaceSubclass:0x0, BInterfaceProtocol:0x0, IInterface:0x5}

HID: usbip.USBHIDDescriptor{BLength:0x9, BDescriptorType:0x21, BcdHID:0x101, BCountryCode:0x0, BNumDescriptors:0x1, BClassDescriptorType:0x22, WReportDescriptorLength:0x1e}

[USB] ENDPOINT: usbip.USBEndpointDescriptor{BLength:0x7, BDescriptorType:0x5, BEndpointAddress:0x81, BmAttributes:0x3, WMaxPacketSize:0x40, BInterval:0xff}

[USB] ENDPOINT: usbip.USBEndpointDescriptor{BLength:0x7, BDescriptorType:0x5, BEndpointAddress:0x2, BmAttributes:0x3, WMaxPacketSize:0x40, BInterval:0xff}

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 46, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0x29, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 47, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 255, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x300, WIndex: 0, WLength: 255 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x300, WIndex: 0, WLength: 255 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_STRING Index: 0

[USB] STRING: Length: 4 Message: "  " Bytes: [4 3 9 4]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 47, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0xff, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 48, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 255, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x302, WIndex: 1033, WLength: 255 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x302, WIndex: 1033, WLength: 255 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_STRING Index: 2

[USB] STRING: Length: 26 Message: "Virtual FIDO" Bytes: [26 3 86 0 105 0 114 0 116 0 117 0 97 0 108 0 32 0 70 0 73 0 68 0 79 0]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 48, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0xff, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 49, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 255, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x301, WIndex: 1033, WLength: 255 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x301, WIndex: 1033, WLength: 255 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_STRING Index: 1

[USB] STRING: Length: 22 Message: "No Company" Bytes: [22 3 78 0 111 0 32 0 67 0 111 0 109 0 112 0 97 0 110 0 121 0]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 49, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0xff, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 50, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 255, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x303, WIndex: 1033, WLength: 255 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x303, WIndex: 1033, WLength: 255 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_STRING Index: 3

[USB] STRING: Length: 34 Message: "No Serial Number" Bytes: [34 3 78 0 111 0 32 0 83 0 101 0 114 0 105 0 97 0 108 0 32 0 78 0 117 0 109 0 98 0 101 0 114 0]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 50, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0xff, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 51, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x0, TransferBufferLength: 0, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_HOST_TO_DEVICE, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_SET_CONFIGURATION, WValue: 0x0, WIndex: 0, WLength: 0 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_HOST_TO_DEVICE, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_SET_CONFIGURATION, WValue: 0x0, WIndex: 0, WLength: 0 }

[USB] TRANSFER BUFFER: []

[USB] SET_CONFIGURATION: No-op

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 51, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0x0, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 52, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 255, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x304, WIndex: 1033, WLength: 255 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x304, WIndex: 1033, WLength: 255 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_STRING Index: 4

[USB] STRING: Length: 18 Message: "String 4" Bytes: [18 3 83 0 116 0 114 0 105 0 110 0 103 0 32 0 52 0]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 52, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0xff, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 53, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 255, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x305, WIndex: 1033, WLength: 255 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x305, WIndex: 1033, WLength: 255 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_STRING Index: 5

[USB] STRING: Length: 36 Message: "Default Interface" Bytes: [36 3 68 0 101 0 102 0 97 0 117 0 108 0 116 0 32 0 73 0 110 0 116 0 101 0 114 0 102 0 97 0 99 0 101 0]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 53, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0xff, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 54, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 255, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x303, WIndex: 1033, WLength: 255 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_DEVICE, BRequest: USB_REQUEST_GET_DESCRIPTOR, WValue: 0x303, WIndex: 1033, WLength: 255 }

[USB] GET DESCRIPTOR: Type: USB_DESCRIPTOR_STRING Index: 3

[USB] STRING: Length: 34 Message: "No Serial Number" Bytes: [34 3 78 0 111 0 32 0 83 0 101 0 114 0 105 0 97 0 108 0 32 0 78 0 117 0 109 0 98 0 101 0 114 0]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 54, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0xff, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 55, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x0, TransferBufferLength: 0, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_HOST_TO_DEVICE, RequestType: USB_REQUEST_CLASS_VENDOR, Recipient: USB_REQUEST_RECIPIENT_INTERFACE, BRequest: USB_HID_REQUEST_SET_IDLE, WValue: 0x0, WIndex: 0, WLength: 0 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_HOST_TO_DEVICE, RequestType: USB_REQUEST_CLASS_VENDOR, Recipient: USB_REQUEST_RECIPIENT_INTERFACE, BRequest: USB_HID_REQUEST_SET_IDLE, WValue: 0x0, WIndex: 0, WLength: 0 }

[USB] TRANSFER BUFFER: []

[USB] SET IDLE: No-op

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 55, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0x0, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}

[USBIP] [MESSAGE HEADER] USBIPMessageHeader{ Command: USBIP_COMMAND_SUBMIT, SequenceNumber: 56, DeviceID: 2-2, Direction: USBIP_DIR_IN, Endpoint: 0 }

[USBIP] [COMMAND SUBMIT] USBIPCommandSubmitBody{ TransferFlags: 0x200, TransferBufferLength: 30, StartFrame: 0, NumberOfPackets: 0, Interval: 0, Setup: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_INTERFACE, BRequest: USB_HID_REQUEST_GET_DESCRIPTOR, WValue: 0x2200, WIndex: 0, WLength: 30 } }

[USB] USB MESSAGE - ENDPOINT 0

[USB] CONTROL MESSAGE: USBSetupPacket{ Direction: USB_DEVICE_TO_HOST, RequestType: USB_REQUEST_CLASS_STANDARD, Recipient: USB_REQUEST_RECIPIENT_INTERFACE, BRequest: USB_HID_REQUEST_GET_DESCRIPTOR, WValue: 0x2200, WIndex: 0, WLength: 30 }

[USB] GET INTERFACE DESCRIPTOR: Type: USB_DESCRIPTOR_HID_REPORT Index: 0

[USB] HID REPORT: [6 208 241 9 1 161 1 9 32 20 37 255 117 8 149 64 129 2 9 33 20 37 255 117 8 149 64 145 2 192]

[USBIP] [RETURN SUBMIT] USBIPMessageHeader{ Command: USBIP_COMMAND_RET_SUBMIT, SequenceNumber: 56, DeviceID: 2-2, Direction: USBIP_DIR_OUT, Endpoint: 0 } usbip.USBIPReturnSubmitBody{Status:0x0, ActualLength:0x1e, StartFrame:0x0, NumberOfPackets:0x0, ErrorCount:0x0, Padding:0x0}