summaryrefslogtreecommitdiffstats
path: root/src/win-usb-clerk.h
blob: 24da3b4f9026f3dc9a97df0b72ddba43779559dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#ifndef _H_USBCLERK
#define _H_USBCLERK

#include <windows.h>

#define USB_CLERK_PIPE_NAME     TEXT("\\\\.\\pipe\\usbclerkpipe")
#define USB_CLERK_MAGIC         0xDADA
#define USB_CLERK_VERSION       0x0003

typedef struct USBClerkHeader {
    UINT16 magic;
    UINT16 version;
    UINT16 type;
    UINT16 size;
} USBClerkHeader;

enum {
    USB_CLERK_DRIVER_INSTALL = 1,
    USB_CLERK_DRIVER_REMOVE,
    USB_CLERK_REPLY,
    USB_CLERK_DRIVER_SESSION_INSTALL,
    USB_CLERK_END_MESSAGE,
};

typedef struct USBClerkDriverOp {
    USBClerkHeader hdr;
    UINT16 vid;
    UINT16 pid;
} USBClerkDriverOp;

typedef struct USBClerkReply {
    USBClerkHeader hdr;
    UINT32 status;
} USBClerkReply;

#endif