Blocking individual interfaces of USB composite devices
AssigneeDell Products L.P.
InventorsAnkit Kumar, Gokul Thiruchengode Vajravel
Life of this patent
Estimating the term…
Abstract
Individual interfaces of USB composite devices can be blocked. When a USB device is connected to a host system, a filter driver can be loaded on top of the USB hub driver and can be configured to monitor I/O control (IOCTL) requests that are sent as part of the enumeration process. When the filter driver detects that the USB device is a USB composite device, it can selectively modify the descriptors that the USB composite device reports based on the number of interfaces that will not be blocked. This selective modification of the descriptors enables individual interfaces to be blocked without filtering the USB composite class driver which in turn minimizes or eliminates any conflicts that may otherwise exist.
Claims20
A method, performed by a filter, for blocking individual interfaces of USB composite devices, the method comprising:
- receiving, by the filter, a first request sent by a USB composite driver to a USB hub driver;
- determining that the first request is a request for a configuration descriptor of a USB device;
- receiving a response to the first request from the USB hub driver, the response including the configuration descriptor of the USB device;
- determining that one or more interfaces defined in the configuration descriptor should be blocked;
- modifying the configuration descriptor by removing the one or more interfaces from the configuration descriptor;
- and
- passing, by the filter, the response with the modified configuration descriptor to the USB composite driver.
One or more computer storage media storing computer executable instructions which when executed implement a method for blocking individual interfaces of USB composite devices, the method comprising:
- attaching a filter device object to a USB hub physical device object;
- receiving, at the filter device object, a USB request block that targets the USB hub physical device object and that requests a configuration descriptor of a USB device;
- causing, by the filter device object, the USB request block to be provided to the filter device object after the USB hub physical device object has obtained the configuration descriptor of the USB device;
- obtaining, at the filter device object, the configuration descriptor of the USB device from the USB request block;
- determining that one or more interfaces defined in the configuration descriptor should be blocked;
- modifying the configuration descriptor by removing the one or more interfaces from the configuration descriptor;
- and
- passing, by the filter, the USB request block with the modified configuration descriptor to a USB composite driver.
A method, performed by a filter, for blocking individual interfaces of USB composite devices, the method comprising:
- receiving, by the filter and from a USB hub driver, a response that includes a configuration descriptor of a USB device, the response targeting a USB composite driver;
- determining that one or more interfaces defined in the configuration descriptor should be blocked;
- modifying the configuration descriptor by removing the one or more interfaces from the configuration descriptor;
- and
- passing, by the filter, the response with the modified configuration descriptor to the USB composite driver.
Dependencies are inferred from the claim text.