[Spice-devel] [libusb] UsbDk 1.0.15 released

Ларионов Даниил scumcoder at yandex.ru
Mon Sep 5 15:13:04 UTC 2016


> Hmm. 7.5Meg is not a "Short presentation" (not for download over a dialup
> connection). Is there something smaller out there? Maybe a plain text README?

The PDF is just text with no pictures or (sophisticated) diagrams. Here is the copypaste (the number represents the PDF page):


1) UsbDk at a Glance

2) Meet UsbDk
- UsbDk stands for “USB Development Kit”
- Universal engine for exclusive access to USB devices on Windows OSes
- Full user mode API for all device operations
- Designed to support all types of USB devices
- Generic API to allow wide range of use-cases
- Designed with HCK certifications in mind
- Hiding engine for total detachment of USB devices
- from OS software stack

3) Feature set
- Totally dynamic device capture
  - No INF files and no self-signing needed
  - Any device can be captured
- Totally dynamic device detachment
  - Any device or class of devices may be hidden
  - Prevents Windows from showing "New Hardware” pop-ups for devices without in-box drivers
  - Great for security solutions
- Co-existence with original device driver
  - When the device is not captured original driver is loaded by the system automatically
  - If user mode client terminates unexpectedly for any reason system reverts to original device driver immediately
- Supports for all types of devices and interfaces
  - Bulk, isochronous, composite, HID, etc.
- Being USB filter driver doesn't require WHQL-ing
  - as per Microsoft requirements

4) Advantages over WinUSB
- Full feature parity
- Full support for isochronous devices
- Full support for composite devices
- No INF files and no signing needed
- Open source and community supported

5) Supported Windows Versions
- 7
- 8 
- 8.1
- 2008 R2
- 2012
- 2012 R2
- XP
- 2003
- Vista
- 2008

6) UsbDk is open source
- Hosted by: http://www.spice-space.org
- Mailing list: spice-devel (http://lists.freedesktop.org/mailman/listinfo/spice-devel)
- Maintained by: Dmitry Fleytman <dfleytma at redhat.com>, Dmitry Fleytman <dmitry at daynix.com>
- License: Apache 2.0
- Git repository: http://cgit.freedesktop.org/spice/win32/usbdk/

7) Build environment
- Visual Studio 2013 Update 4
- Windows Driver Kit (WDK) 8.1 for Windows 7/2008R2 and later platforms
- Windows 7 DDK (WDK 7.1) for Windows XP, 2003, Vista, 2008
- WiX toolset 3.8 for MSI packages creation

8) UsbDk components
User mode:
- UsbDkController.exe
- UsbDkHelper.dll
Kernel mode:
- UsbDk.sys

9) UsbDkHelper.dll API
Install:
- Driver installation
- Driver un-installation
Acquire:
- Enumerate USB devices
- Capture USB device
- Hide USB device
Operate:
- Pipe transfer
- Control transfer
- Configure device
- Reset device

10) UsbDk.sys structure
UsbDkHelper.dll
|
Control interface
Generic USB device driver
USB hub filter
USB device filter
|
PNP Manager

11) Technical Info
- See ARCHITECTURE document at source tree root http://cgit.freedesktop.org/spice/win32/usbdk/tree/ARCHITECTURE
- Software Development Manual available on www.spice-space.org

12) Thank you!



-- 
Даниил Ларионов


05.09.2016, 17:31, "Robert Heller" <heller at deepsoft.com>:
> At Mon, 5 Sep 2016 14:58:16 +0300 Dmitry Fleytman <dmitry at daynix.com> wrote:
>
>>  Hi All,
>>
>>  The new version of UsbDk (1.0.15) was released.
>>
>>  This version contains fixes and improvements for
>>  USB unplug events processing.
>>
>>  The latest UsbDk source code 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-15-sources.zip
>>
>>  Precompiled and signed by Red Hat binaries are available at:
>>  1. 32 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.15_x86.msi
>>  2. 64 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.15_x64.msi
>>
>>  UsbDk documentation:
>>  1. Short presentation: http://www.spice-space.org/docs/usbdk/UsbDk_at_a_Glance.pdf
>
> Hmm. 7.5Meg is not a "Short presentation" (not for download over a dialup
> connection). Is there something smaller out there? Maybe a plain text README?
>
>>  2. SDM: http://www.spice-space.org/docs/usbdk/UsbDk_Software_Development_Manual.pdf
>>  3. UsbDk architecture specification (part of source tree):
>>    http://cgit.freedesktop.org/spice/win32/usbdk/tree/ARCHITECTURE
>>
>>  Best regards,
>>  Dmitry
>>
>>  ------------------------------------------------------------------------------
>>  _______________________________________________
>>  libusb-devel mailing list
>>  libusb-devel at lists.sourceforge.net
>>  https://lists.sourceforge.net/lists/listinfo/libusb-devel
>
> --
> Robert Heller -- 978-544-6933
> Deepwoods Software -- Custom Software Services
> http://www.deepsoft.com/ -- Linux Administration Services
> heller at deepsoft.com -- Webhosting Services
>
> ------------------------------------------------------------------------------
> _______________________________________________
> libusb-devel mailing list
> libusb-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/libusb-devel


More information about the Spice-devel mailing list