[Spice-devel] [PATCH v4 0/7] Support UsbDk backend

Kirill Moizik kirill at daynix.com
Thu Jun 18 05:46:13 PDT 2015


From: Kirill Moizik <kirillm at daynix.com>

V4 changeset :
-fix commit author
-fix "usbdk standalone fix" commit description
-fix too long lines in usbdk_api.c file

V3 changeset :
-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

V2 changeset :
-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

Kirill Moizik (4):
  UsbDk: Add UsbDk wrapper
  Add SpiceUsbDeviceManager::use_usbclerk
  UsbDk: Add UsbDk as a default backend
  UsbDeviceManager: fix usbdk standalone mode

 src/Makefile.am          |   2 +
 src/usb-device-manager.c | 311 ++++++++++++++++++++++++++++++-----------------
 src/usbdk_api.c          | 173 ++++++++++++++++++++++++++
 src/usbdk_api.h          |  34 ++++++
 4 files changed, 406 insertions(+), 114 deletions(-)
 create mode 100644 src/usbdk_api.c
 create mode 100644 src/usbdk_api.h

--
2.1.0



More information about the Spice-devel mailing list