[Spice-devel] [usbredir PATCH] usbredirfilter_check: block device if all its interfaces skipped
Uri Lublin
uril at redhat.com
Thu Jul 9 07:51:53 PDT 2015
On Thu, 2015-07-09 at 10:13 +0200, Hans de Goede wrote:
> Hi,
>
> On 09-07-15 09:19, Christophe Fergeau wrote:
> > On Wed, Jul 08, 2015 at 07:36:40PM +0200, Hans de Goede wrote:
> > > Can you ask the reporter to provide lsusb -v output for the usb
> > > interface
> > > of the kvm in question, then we can better analyse what exactly
> > > is going
> > > wrong here. Perhaps my analyses of the problem is wrong.
> >
> > Is https://bugzilla.redhat.com/attachment.cgi?id=980879 enough or
> > do you
> > need something even more detailed?
>
> That is good enough, but all the hid devices in there have at least
> one
> interface which has:
>
> bInterfaceSubClass 1 Boot Interface Subclass
>
> So atleast 1 interface will not be skipped for the filter check and
> the
> Uri's patch will be a nop on these devices.
I've tested with a different KVM switch device, see below its
descriptors.
The patch fixes the problem I found with "my" KVM device.
You are probably right it will not fix the problem in the bug.
---
Bus 002 Device 043: ID 10d5:55a4 Uni Class Technology Co., Ltd
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x10d5 Uni Class Technology Co., Ltd
idProduct 0x55a4
bcdDevice 1.00
iManufacturer 1 No brand
iProduct 2 4 Port KVMSwicther
iSerial 3 04
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 59
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 4 HID Mouse
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 7 Keyboard
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 65
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 6 Mouse
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 24
Report Descriptor: (length is 24)
Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
(null)
Item(Local ): Usage, data= [ 0x01 ] 1
(null)
Item(Main ): Collection, data= [ 0x01 ] 1
Application
Item(Global): Logical Minimum, data= [ 0x00 ] 0
Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
Item(Local ): Usage Minimum, data= [ 0x00 ] 0
(null)
Item(Local ): Usage Maximum, data= [ 0xff 0x00 ] 255
(null)
Item(Global): Report Count, data= [ 0x08 ] 8
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Main ): Output, data= [ 0x02 ] 2
Data Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position
Non_Volatile Bitfield
Item(Main ): End Collection, data=none
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 10
Device Status: 0x0040
(Bus Powered)
Debug Mode
---
Thanks,
Uri
More information about the Spice-devel
mailing list