[Spice-devel] [PATCH 00/10] Add support for UsbDk backend

Dmitry Fleytman dmitry at daynix.com
Thu Feb 11 16:03:00 UTC 2016


Oops, I forgot to add v7 to patch subjects.
Resending…

> On 11 Feb 2016, at 17:59 PM, Dmitry Fleytman <dmitry at daynix.com> wrote:
> 
> Changes since v6:
> - patches changed and reordered according to Jonathon recommentations (Jonathon, thanks for the great review!)
> - rebased to the latest master
> 
> Changes since v5:
> - fixed build without USB redirection
> - cosmetic changes and beautifications
> - rebased to the latest master
> 
> Changes since v4:
> - minor fixes as suggested by Christophe
> 
> Changes since v3:
> -fix commit author
> -fix "usbdk standalone fix" commit description
> -fix too long lines in usbdk_api.c file
> 
> Changes since v2:
> -use Christophe's split
> -fix usbdk standalone mode (usb redirection widget gray out when usbclerk not installed)
> -use match_all constant at rule parsing
> -cosmetic fixes
> 
> Changes since v1:
> -opaque usbdk wrapper
> -use_usbclerk instead of use_usbdk
> -use_usbclerk is DeviceManager member, not global variable
> -all v1 suggestions were applied
> 
> UsbDk (USB Development Kit) is a set of software components meant to provide
> Windows user mode applications with direct and exclusive access to USB devices.
> 
> Some distinctive UsbDk properties are:
> 
> 1. UsbDk supports all types of devices and interfaces - bulk, isochronous,
>   composite, HID etc.
> 2. Device capture process is totally dynamic, i.e. no inf files and
>   self-signing needed, any device can be captured.
> 3. UsbDk co-exists with original device driver, when the device is not
>   captured original driver is loaded by the system automatically.
> 4. If user mode client terminates unexpectedly for any reason system reverts
>   to original device driver immediately.
> 5. Being USB filter driver UsbDk doesn't require WHQL-ing
>   as per Microsoft requirements.
> 
> UsbDk supports all Windows OS versions staring from Windows XP,
> i.e. XP/Vista/7/8/8.1/2003/2008/2008R2/2012/2012R2.
> Both 32 and 64 bit architectures are supported.
> 
> UsbDk is fully open source and distributed under Apache 2.0 license.
> 
> UsbDk project is hosted at spice-space.org, source code repository available at:
> http://cgit.freedesktop.org/spice/win32/usbdk
> 
> Latest source tarball is at: \
> http://www.spice-space.org/download/windows/usbdk/spice-usbdk-win-1.0-4-sources.zip
> 
> UsbDk releases come with precompiled and signed by Red Hat binaries:
> 1. 32 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.4_x86.msi
> 2. 64 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.4_x64.msi
> 
> UsbDk documentation:
> 1. Short presentation: http://www.spice-space.org/docs/usbdk/UsbDk_at_a_Glance.pdf
> 2. SDM: http://www.spice-space.org/docs/usbdk/UsbDk_Software_Development_Manual.pdf
> 3. UsbDk architecture specificatin (part of source tree):
>   http://cgit.freedesktop.org/spice/win32/usbdk/tree/ARCHITECTURE
> 
> UsbDk is maintained by Dmitry Fleytman (dfleytma at redhat.com) and
> Kirill Moizik (kmoizik at redhat.com) we'll be glad to answer your questions sent
> to us directly or via this mailing list.
> 
> This set of patches add UsbDk backend support to spice-gtk.
> 
> Christophe Fergeau (3):
>  Simplify spice_usb_device_equal_libdev()
>  Simplify spice_usb_device_manager_device_to_libdev()
>  Add SpiceUsbDeviceManager parameter to device comparison functions
> 
> Dmitry Fleytman (7):
>  win-usbredir: Introduce UsbDk wrapper
>  win-usbredir: Only match USB devices by VID:PID when WinUsb used
>  usbdk: Load hide rules for auto-redirected devices
>  win-usbredir: Move installer interaction logic to separate functions
>  win-usbredir: Do not use UsbClerk for non-WinUsb backends
>  win-usbredir: Use UsbDk backend when available
>  usb-dev-manager: Fix cbinfo leak in case of abnormal return
> 
> src/Makefile.am          |   2 +
> src/usb-device-manager.c | 363 +++++++++++++++++++++++++++++++----------------
> src/usbdk_api.c          | 187 ++++++++++++++++++++++++
> src/usbdk_api.h          |  34 +++++
> 4 files changed, 465 insertions(+), 121 deletions(-)
> create mode 100644 src/usbdk_api.c
> create mode 100644 src/usbdk_api.h
> 
> -- 
> 2.5.0
> 



More information about the Spice-devel mailing list