ReactOS  0.4.12-dev-57-g7050ac4
types.h
Go to the documentation of this file.
1 /*
2  rdesktop: A Remote Desktop Protocol client.
3  Common data types
4  Copyright (C) Matthew Chapman 1999-2008
5  Copyright 2014 Henrik Andersson <hean01@cendio.se> for Cendio AB
6 
7  This program is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 typedef int RD_BOOL;
22 
23 #ifndef True
24 #define True (1)
25 #define False (0)
26 #endif
27 
28 typedef unsigned char uint8;
29 typedef signed char sint8;
30 typedef unsigned short uint16;
31 typedef signed short sint16;
32 typedef unsigned int uint32;
33 typedef signed int sint32;
34 
35 typedef void *RD_HBITMAP;
36 typedef void *RD_HGLYPH;
37 typedef void *RD_HCOLOURMAP;
38 typedef void *RD_HCURSOR;
39 
40 
41 typedef enum _RDP_VERSION
42 {
43  RDP_V4 = 4,
44  RDP_V5 = 5,
45  RDP_V6 = 6
46 } RDP_VERSION;
47 
48 
49 typedef struct _RD_POINT
50 {
52 }
53 RD_POINT;
54 
55 typedef struct _COLOURENTRY
56 {
60 
61 }
63 
64 typedef struct _COLOURMAP
65 {
68 
69 }
70 COLOURMAP;
71 
72 typedef struct _BOUNDS
73 {
78 
79 }
80 BOUNDS;
81 
82 typedef struct _PEN
83 {
87 
88 }
89 PEN;
90 
91 /* this is whats in the brush cache */
92 typedef struct _BRUSHDATA
93 {
97 }
98 BRUSHDATA;
99 
100 typedef struct _BRUSH
101 {
107 }
108 BRUSH;
109 
110 typedef struct _FONTGLYPH
111 {
117 
118 }
119 FONTGLYPH;
120 
121 typedef struct _DATABLOB
122 {
123  void *data;
124  int size;
125 
126 }
127 DATABLOB;
128 
129 typedef struct _key_translation
130 {
131  /* For normal scancode translations */
134  /* For sequences. If keysym is nonzero, the fields above are not used. */
135  uint32 seq_keysym; /* Really KeySym */
137 }
139 
141 {
143  /* The full KeySym for this entry, not KEYMAP_MASKed */
145  /* This will be non-NULL if there has been a hash collision */
147 }
149 
150 typedef struct _VCHANNEL
151 {
153  char name[8];
155  struct stream in;
157 }
158 VCHANNEL;
159 
160 /* PSTCACHE */
161 typedef uint8 HASH_KEY[8];
162 
163 /* Header for an entry in the persistent bitmap cache file */
164 typedef struct _PSTCACHE_CELLHEADER
165 {
170 }
171 CELLHEADER;
172 
173 #define MAX_CBSIZE 256
174 
175 /* RDPSND */
176 typedef struct _RD_WAVEFORMATEX
177 {
187 
188 typedef struct _RDPCOMP
189 {
192  struct stream ns;
193 }
194 RDPCOMP;
195 
196 /* RDPDR */
199 
200 typedef struct _DEVICE_FNS
201 {
202  RD_NTSTATUS(*create) (uint32 device, uint32 desired_access, uint32 share_mode,
203  uint32 create_disposition, uint32 flags_and_attributes,
204  char *filename, RD_NTHANDLE * handle);
207  uint32 * result);
209  uint32 * result);
211 }
212 DEVICE_FNS;
213 
214 
215 typedef struct rdpdr_device_info
216 {
219  char name[8];
220  char *local_path;
222 }
224 
226 {
227  int dtr;
228  int rts;
229  uint32 control, xonoff, onlimit, offlimit;
230  uint32 baud_rate,
231  queue_in_size,
232  queue_out_size,
233  wait_mask,
234  read_interval_timeout,
235  read_total_timeout_multiplier,
236  read_total_timeout_constant,
237  write_total_timeout_multiplier, write_total_timeout_constant, posix_wait_mask;
238  uint8 stop_bits, parity, word_length;
239  uint8 chars[6];
240  struct termios *ptermios, *pold_termios;
241  int event_txempty, event_cts, event_dsr, event_rlsd, event_pending;
242 }
244 
246 {
247  char *driver, *printer;
248  uint32 queue_in_size,
249  queue_out_size,
250  wait_mask,
251  read_interval_timeout,
252  read_total_timeout_multiplier,
253  read_total_timeout_constant,
255  write_total_timeout_constant, posix_wait_mask, bloblen;
257 }
259 
260 typedef struct rdpdr_printer_info
261 {
263  char *driver, *printer;
267 }
268 PRINTER;
269 
270 typedef struct notify_data
271 {
275  unsigned int num_entries;
276 }
277 NOTIFY;
278 
279 #ifndef PATH_MAX
280 #define PATH_MAX 256
281 #endif
282 
283 typedef struct fileinfo
284 {
285  uint32 device_id, flags_and_attributes, accessmask;
286  char path[PATH_MAX];
288  struct dirent *pdirent;
293 }
294 FILEINFO;
295 
296 typedef RD_BOOL(*str_handle_lines_t) (const char *line, void *data);
time_t status_time
Definition: types.h:273
Definition: types.h:72
uint32 RD_NTHANDLE
Definition: types.h:198
RD_NTHANDLE handle
Definition: types.h:218
uint32 write_total_timeout_multiplier
Definition: types.h:230
signed int sint32
Definition: types.h:33
struct _FONTGLYPH FONTGLYPH
void * RD_HGLYPH
Definition: types.h:36
namespace GUID const ADDRINFOEXW ADDRINFOEXW struct timeval OVERLAPPED LPLOOKUPSERVICE_COMPLETION_ROUTINE HANDLE * handle
Definition: sock.c:82
uint16 ncolours
Definition: types.h:66
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
Definition: typeof.h:47
struct _RD_POINT RD_POINT
uint32 flags_and_attributes
Definition: types.h:285
uint8 yorigin
Definition: types.h:103
uint32 keysym
Definition: types.h:144
int size
Definition: types.h:124
uint32 colour_code
Definition: types.h:94
struct _RD_WAVEFORMATEX RD_WAVEFORMATEX
signed char sint8
Definition: types.h:29
struct rdpdr_parallel_device_info PARALLEL_DEVICE
unsigned int uint32
Definition: types.h:32
uint8 xorigin
Definition: types.h:102
Definition: types.h:82
uint16 height
Definition: types.h:115
char * printer
Definition: types.h:263
uint16 wBitsPerSample
Definition: types.h:183
GLintptr offset
Definition: glext.h:5920
struct _BRUSH BRUSH
struct _COLOURMAP COLOURMAP
sint16 baseline
Definition: types.h:113
struct _PEN PEN
uint32 nSamplesPerSec
Definition: types.h:180
struct _key_translation * next
Definition: types.h:136
const char * filename
Definition: ioapi.h:135
void * RD_HCURSOR
Definition: types.h:38
time_t modify_time
Definition: types.h:272
uint16 nBlockAlign
Definition: types.h:182
Definition: fatfs.h:198
_RDP_VERSION
Definition: types.h:41
void * RD_HBITMAP
Definition: types.h:35
sint16 right
Definition: types.h:76
uint32 RD_NTSTATUS
Definition: types.h:197
void * pdevice_data
Definition: types.h:221
sint16 x
Definition: types.h:51
#define write
Definition: acwin.h:73
NOTIFY notify
Definition: types.h:291
RD_BOOL default_printer
Definition: types.h:266
#define MAX_CBSIZE
Definition: types.h:173
BRUSHDATA * bd
Definition: types.h:106
#define RDP_MPPC_DICT_SIZE
Definition: constants.h:358
struct _key_translation_entry * next
Definition: types.h:146
Definition: devices.h:39
uint8 width
Definition: types.h:85
Definition: dirent.h:39
Definition: types.h:140
struct termios * ptermios
Definition: types.h:240
struct _BOUNDS BOUNDS
uint8 HASH_KEY[8]
Definition: types.h:161
uint8 * blob
Definition: types.h:265
uint32 flags
Definition: types.h:154
int RD_BOOL
Definition: types.h:21
RD_BOOL delete_on_close
Definition: types.h:290
uint32 bloblen
Definition: types.h:264
struct rdpdr_serial_device_info SERIAL_DEVICE
uint8 blue
Definition: types.h:59
RD_BOOL(* str_handle_lines_t)(const char *line, void *data)
Definition: types.h:296
COLOURENTRY * colours
Definition: types.h:67
uint16 mcs_id
Definition: types.h:152
Definition: types.h:100
uint32 info_class
Definition: types.h:292
char * local_path
Definition: types.h:220
sint16 left
Definition: types.h:74
struct rdpdr_printer_info PRINTER
Definition: types.h:44
uint32 seq_keysym
Definition: types.h:135
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
struct stream * STREAM
sint16 bottom
Definition: types.h:77
static FILE * out
Definition: regtests2xml.c:44
uint32 data_size
Definition: types.h:95
#define PATH_MAX
Definition: types.h:280
unsigned char uint8
Definition: types.h:28
void * RD_HCOLOURMAP
Definition: types.h:37
uint8 * data
Definition: types.h:96
static DWORD cb
Definition: integrity.c:41
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
FILE * printer_fp
Definition: types.h:262
struct _RDPCOMP RDPCOMP
uint32 colour
Definition: types.h:86
uint16 nChannels
Definition: types.h:179
char line[200]
Definition: main.c:97
struct dirent * pdirent
Definition: types.h:288
struct _key_translation key_translation
Definition: mxnamespace.c:44
key_translation * tr
Definition: types.h:142
Definition: parse.h:22
struct _key_translation_entry key_translation_entry
struct _COLOURENTRY COLOURENTRY
unsigned int num_entries
Definition: types.h:275
enum _RDP_VERSION RDP_VERSION
sint16 top
Definition: types.h:75
struct @1598::@1599 driver
void * data
Definition: types.h:123
signed short sint16
Definition: types.h:31
#define close
Definition: acwin.h:74
uint32 nAvgBytesPerSec
Definition: types.h:181
Definition: types.h:43
GLint GLint GLsizei GLsizei height
Definition: gl.h:1546
uint16 width
Definition: types.h:114
GLfloat CONST GLvector4f * in
Definition: m_xform.h:122
uint8 green
Definition: types.h:58
sint16 offset
Definition: types.h:112
DIR * pdir
Definition: types.h:287
uint32 write_total_timeout_multiplier
Definition: types.h:248
uint32 roff
Definition: types.h:190
struct _DEVICE_FNS DEVICE_FNS
struct _PSTCACHE_CELLHEADER CELLHEADER
uint16 cbSize
Definition: types.h:184
uint8 scancode
Definition: types.h:132
__kernel_time_t time_t
Definition: linux.h:252
struct notify_data NOTIFY
unsigned short uint16
Definition: types.h:30
struct _BRUSHDATA BRUSHDATA
uint8 style
Definition: types.h:84
uint32 device_type
Definition: types.h:217
struct rdpdr_device_info RDPDR_DEVICE
Definition: services.c:325
struct fileinfo FILEINFO
Definition: tftpd.h:85
Definition: name.c:36
uint8 red
Definition: types.h:57
sint16 y
Definition: types.h:51
struct _DATABLOB DATABLOB
uint16 wFormatTag
Definition: types.h:178
struct _VCHANNEL VCHANNEL
Definition: types.h:45
GLuint64EXT * result
Definition: glext.h:11304
static const struct access_res create[16]
Definition: package.c:7720
time_t total_time
Definition: types.h:274
uint8 style
Definition: types.h:104
HASH_KEY key
Definition: types.h:166
uint16 modifiers
Definition: types.h:133
GLubyte * pattern
Definition: glext.h:7787
_CRTIMP int __cdecl read(_In_ int _FileHandle, _Out_writes_bytes_(_MaxCharCount) void *_DstBuf, _In_ unsigned int _MaxCharCount)
RD_HBITMAP pixmap
Definition: types.h:116