• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# USB/IP server library
2
3This folder contains set of classes and structures that constitute basic USB/IP
4server.
5
6Protocol used in this library is defined as part of
7[Linux kernel documentation](https://www.kernel.org/doc/Documentation/usb/usbip_protocol.txt).
8
9## Structure
10
11### [`vadb::usbip::Device`](./device.h)[](#Device)
12
13Structure describing individual device accessible over USB/IP protocol.
14
15### [`vadb::usbip::DevicePool`](./device_pool.h)[](#DevicePool)
16
17DevicePool holds a set of [Devices](#Device) that can be enumerated and
18accessed by clients of this Server.
19
20### [`vadb::usbip::Server`](./server.h)
21
22Purpose of this class is to start a new listening socket and accept incoming
23USB/IP connections & requests.
24
25### [`vadb::usbip::Client`](./client.h)
26
27Client class represents individual USB/IP connection. Client enables remote
28USB/IP client to enumerate and access devices registered in
29[DevicePool](#DevicePool).
30
31### [`USB/IP Messages`](./messages.h)
32
33This file contains structures and enum values defined by the USB/IP protocol.
34All definitions found there have been collected from
35[Linux kernel documentation](https://www.kernel.org/doc/Documentation/usb/usbip_protocol.txt)
36.
37