FreeRDP
channels/encomsp.h
1 
20 #ifndef FREERDP_CHANNEL_ENCOMSP_H
21 #define FREERDP_CHANNEL_ENCOMSP_H
22 
23 #include <freerdp/api.h>
24 #include <freerdp/types.h>
25 
26 #ifdef __cplusplus
27 extern "C"
28 {
29 #endif
30 
35 #define ENCOMSP_CHANNEL_NAME "encomsp"
36 #define ENCOMSP_SVC_CHANNEL_NAME "encomsp"
37 
38 typedef struct
39 {
40  UINT16 cchString;
41  WCHAR wString[1024];
43 
44 /* Filter Updated PDU Flags */
45 
46 #define ENCOMSP_FILTER_ENABLED 0x0001
47 
48 /* Application Created PDU Flags */
49 
50 #define ENCOMSP_APPLICATION_SHARED 0x0001
51 
52 /* Window Created PDU Flags */
53 
54 #define ENCOMSP_WINDOW_SHARED 0x0001
55 
56 /* Participant Created PDU Flags */
57 
58 #define ENCOMSP_MAY_VIEW 0x0001
59 #define ENCOMSP_MAY_INTERACT 0x0002
60 #define ENCOMSP_IS_PARTICIPANT 0x0004
61 
62 /* Participant Removed PDU Disconnection Types */
63 
64 #define ENCOMSP_PARTICIPANT_DISCONNECTION_REASON_APP 0x00000000
65 #define ENCOMSP_PARTICIPANT_DISCONNECTION_REASON_CLI 0x00000002
66 
67 /* Change Participant Control Level PDU Flags */
68 
69 #define ENCOMSP_REQUEST_VIEW 0x0001
70 #define ENCOMSP_REQUEST_INTERACT 0x0002
71 #define ENCOMSP_ALLOW_CONTROL_REQUESTS 0x0008
72 
73 /* PDU Order Types */
74 
75 #define ODTYPE_FILTER_STATE_UPDATED 0x0001
76 #define ODTYPE_APP_REMOVED 0x0002
77 #define ODTYPE_APP_CREATED 0x0003
78 #define ODTYPE_WND_REMOVED 0x0004
79 #define ODTYPE_WND_CREATED 0x0005
80 #define ODTYPE_WND_SHOW 0x0006
81 #define ODTYPE_PARTICIPANT_REMOVED 0x0007
82 #define ODTYPE_PARTICIPANT_CREATED 0x0008
83 #define ODTYPE_PARTICIPANT_CTRL_CHANGED 0x0009
84 #define ODTYPE_GRAPHICS_STREAM_PAUSED 0x000A
85 #define ODTYPE_GRAPHICS_STREAM_RESUMED 0x000B
86 
87 #define DEFINE_ENCOMSP_HEADER_COMMON() \
88  UINT16 Type; \
89  UINT16 Length
90 
91 #define ENCOMSP_ORDER_HEADER_SIZE 4
92 
93 typedef struct
94 {
95  DEFINE_ENCOMSP_HEADER_COMMON();
97 
98 typedef struct
99 {
100  DEFINE_ENCOMSP_HEADER_COMMON();
101 
102  BYTE Flags;
104 
105 typedef struct
106 {
107  DEFINE_ENCOMSP_HEADER_COMMON();
108 
109  UINT16 Flags;
110  UINT32 AppId;
113 
114 typedef struct
115 {
116  DEFINE_ENCOMSP_HEADER_COMMON();
117 
118  UINT32 AppId;
120 
121 typedef struct
122 {
123  DEFINE_ENCOMSP_HEADER_COMMON();
124 
125  UINT16 Flags;
126  UINT32 AppId;
127  UINT32 WndId;
130 
131 typedef struct
132 {
133  DEFINE_ENCOMSP_HEADER_COMMON();
134 
135  UINT32 WndId;
137 
138 typedef struct
139 {
140  DEFINE_ENCOMSP_HEADER_COMMON();
141 
142  UINT32 WndId;
144 
145 typedef struct
146 {
147  DEFINE_ENCOMSP_HEADER_COMMON();
148 
149  UINT32 ParticipantId;
150  UINT32 GroupId;
151  UINT16 Flags;
152  ENCOMSP_UNICODE_STRING FriendlyName;
154 
155 typedef struct
156 {
157  DEFINE_ENCOMSP_HEADER_COMMON();
158 
159  UINT32 ParticipantId;
160  UINT32 DiscType;
161  UINT32 DiscCode;
163 
164 typedef struct
165 {
166  DEFINE_ENCOMSP_HEADER_COMMON();
167 
168  UINT16 Flags;
169  UINT32 ParticipantId;
171 
172 typedef struct
173 {
174  DEFINE_ENCOMSP_HEADER_COMMON();
176 
177 typedef struct
178 {
179  DEFINE_ENCOMSP_HEADER_COMMON();
181 
182 #ifdef __cplusplus
183 }
184 #endif
185 
186 #endif /* FREERDP_CHANNEL_ENCOMSP_H */