FreeRDP
tables.h
1 
20 #include <winpr/platform.h>
21 #include <winpr/wtsapi.h>
22 #include <freerdp/svc.h>
23 #include <freerdp/dvc.h>
24 #include <freerdp/channels/rdpdr.h>
25 
26 /* The 'entry' function pointers have variable arguments. */
27 WINPR_PRAGMA_DIAG_PUSH
28 WINPR_PRAGMA_DIAG_IGNORED_STRICT_PROTOTYPES
29 
30 typedef UINT(VCAPITYPE* static_entry_fn_t)();
31 typedef struct
32 {
33  const char* name;
34  static_entry_fn_t entry;
35 } STATIC_ENTRY;
36 
37 typedef BOOL(VCAPITYPE* static_entry_vc_fn_t)(PCHANNEL_ENTRY_POINTS);
38 typedef struct
39 {
40  const char* name;
41  static_entry_vc_fn_t entry;
43 
44 typedef BOOL(VCAPITYPE* static_entry_vcex_fn_t)(PCHANNEL_ENTRY_POINTS, PVOID);
45 typedef struct
46 {
47  const char* name;
48  static_entry_vcex_fn_t entry;
50 
51 typedef UINT(VCAPITYPE* static_entry_dvc_fn_t)(IDRDYNVC_ENTRY_POINTS*);
52 typedef struct
53 {
54  const char* name;
55  static_entry_dvc_fn_t entry;
57 
58 typedef UINT(VCAPITYPE* static_entry_dse_fn_t)(PDEVICE_SERVICE_ENTRY_POINTS);
59 typedef struct
60 {
61  const char* name;
62  static_entry_dse_fn_t entry;
64 
65 typedef union
66 {
67  const STATIC_ENTRY* cse;
68  const STATIC_ENTRY_VC* csevc;
69  const STATIC_ENTRY_VCEX* csevcex;
70  const STATIC_ENTRY_DVC* csedvc;
71  const STATIC_ENTRY_DSE* csedse;
73 
74 typedef union
75 {
76  static_entry_fn_t cse;
77  static_entry_vc_fn_t csevc;
78  static_entry_vcex_fn_t csevcex;
79  static_entry_dvc_fn_t csedvc;
80  static_entry_dse_fn_t csedse;
82 
83 typedef struct
84 {
85  const char* name;
86  static_entry_u table;
88 
89 typedef UINT(VCAPITYPE* static_subsystem_entry_fn_t)(void*);
90 typedef struct
91 {
92  const char* name;
93  const char* type;
94  static_subsystem_entry_fn_t entry;
96 
97 typedef struct
98 {
99  const char* name;
100  const char* type;
101  static_entry_fn_u entry;
102  const STATIC_SUBSYSTEM_ENTRY* table;
104 
105 WINPR_PRAGMA_DIAG_POP
Definition: tables.h:60
Definition: tables.h:53
Definition: tables.h:84
Definition: tables.h:46
Definition: tables.h:39
Definition: tables.h:32
Definition: tables.h:91
Definition: tables.h:75
Definition: tables.h:66