~ubuntu-branches/ubuntu/raring/freerdp/raring

« back to all changes in this revision

Viewing changes to channels/common/types.h

  • Committer: Bazaar Package Importer
  • Author(s): Otavio Salvador
  • Date: 2010-06-23 21:39:09 UTC
  • Revision ID: james.westby@ubuntu.com-20100623213909-bb9pvvv03913tdv6
Tags: upstream-0.7.1
ImportĀ upstreamĀ versionĀ 0.7.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
#ifndef __TYPES_H
 
3
#define __TYPES_H
 
4
 
 
5
#define MAX_CBSIZE 256
 
6
 
 
7
/* RDPSND */
 
8
typedef struct _RD_WAVEFORMATEX
 
9
{
 
10
        uint16 wFormatTag;
 
11
        uint16 nChannels;
 
12
        uint32 nSamplesPerSec;
 
13
        uint32 nAvgBytesPerSec;
 
14
        uint16 nBlockAlign;
 
15
        uint16 wBitsPerSample;
 
16
        uint16 cbSize;
 
17
        uint8 cb[MAX_CBSIZE];
 
18
} RD_WAVEFORMATEX;
 
19
 
 
20
typedef struct rdpdr_device_info
 
21
{
 
22
        uint32 deviceType;
 
23
        RD_NTHANDLE handle;
 
24
        char name[8];
 
25
        char *local_path;
 
26
        void *pdevice_data;
 
27
}
 
28
RDPDR_DEVICE;
 
29
 
 
30
typedef struct rdpdr_serial_device_info
 
31
{
 
32
        int dtr;
 
33
        int rts;
 
34
        uint32 control, xonoff, onlimit, offlimit;
 
35
        uint32 baud_rate,
 
36
                queue_in_size,
 
37
                queue_out_size,
 
38
                wait_mask,
 
39
                read_interval_timeout,
 
40
                read_total_timeout_multiplier,
 
41
                read_total_timeout_constant,
 
42
                write_total_timeout_multiplier, write_total_timeout_constant, posix_wait_mask;
 
43
        uint8 stop_bits, parity, word_length;
 
44
        uint8 chars[6];
 
45
        struct termios *ptermios, *pold_termios;
 
46
        int event_txempty, event_cts, event_dsr, event_rlsd, event_pending;
 
47
}
 
48
SERIAL_DEVICE;
 
49
 
 
50
typedef struct rdpdr_parallel_device_info
 
51
{
 
52
        char *driver, *printer;
 
53
        uint32 queue_in_size,
 
54
                queue_out_size,
 
55
                wait_mask,
 
56
                read_interval_timeout,
 
57
                read_total_timeout_multiplier,
 
58
                read_total_timeout_constant,
 
59
                write_total_timeout_multiplier,
 
60
                write_total_timeout_constant, posix_wait_mask, bloblen;
 
61
        uint8 *blob;
 
62
}
 
63
PARALLEL_DEVICE;
 
64
 
 
65
typedef struct rdpdr_printer_info
 
66
{
 
67
        FILE *printer_fp;
 
68
        char *driver, *printer;
 
69
        uint32 bloblen;
 
70
        uint8 *blob;
 
71
        RD_BOOL default_printer;
 
72
}
 
73
PRINTER;
 
74
 
 
75
typedef struct notify_data
 
76
{
 
77
        time_t modify_time;
 
78
        time_t status_time;
 
79
        time_t total_time;
 
80
        unsigned int num_entries;
 
81
}
 
82
NOTIFY;
 
83
 
 
84
#ifndef PATH_MAX
 
85
#define PATH_MAX 256
 
86
#endif
 
87
 
 
88
typedef struct fileinfo
 
89
{
 
90
        uint32 device_id, flags_and_attributes, accessmask;
 
91
        char path[PATH_MAX];
 
92
        //DIR *pdir;
 
93
        struct dirent *pdirent;
 
94
        char pattern[PATH_MAX];
 
95
        RD_BOOL delete_on_close;
 
96
        NOTIFY notify;
 
97
        uint32 info_class;
 
98
}
 
99
FILEINFO;
 
100
 
 
101
typedef RD_BOOL(*str_handle_lines_t) (const char *line, void *data);
 
102
 
 
103
/*
 
104
 * The FILETIME structure is a 64-bit value that represents the number of 100-nanosecond intervals
 
105
 * that have elapsed since January 1, 1601, in Coordinated Universal Time (UTC) format.
 
106
 */
 
107
 
 
108
typedef struct FILETIME
 
109
{
 
110
        uint32 dwLowDateTime;
 
111
        uint32 dwHighDateTime;
 
112
}
 
113
FILETIME;
 
114
 
 
115
typedef struct _FILE_BASIC_INFORMATION
 
116
{
 
117
        FILETIME creationTime;
 
118
        FILETIME lastAccessTime;
 
119
        FILETIME lastWriteTime;
 
120
        FILETIME changeTime;
 
121
        uint32 fileAttributes;
 
122
        uint32 reserved;
 
123
}
 
124
FILE_BASIC_INFORMATION;
 
125
 
 
126
typedef struct _FILE_STANDARD_INFORMATION
 
127
{
 
128
        uint32 allocationSizeLow;
 
129
        uint32 allocationSizeHigh;
 
130
        uint32 endOfFileLow;
 
131
        uint32 endOfFileHigh;
 
132
        uint32 numberOfLinks;
 
133
        uint8 deletePending;
 
134
        uint8 directory;
 
135
        uint16 reserved;
 
136
}
 
137
FILE_STANDARD_INFORMATION;
 
138
 
 
139
typedef struct _FILE_BOTH_DIR_INFORMATION
 
140
{
 
141
        uint32 nextEntryOffset;
 
142
        uint32 fileIndex;
 
143
        FILETIME creationTime;
 
144
        FILETIME lastAccessTime;
 
145
        FILETIME lastWriteTime;
 
146
        FILETIME changeTime;
 
147
        uint32 endOfFileLow;
 
148
        uint32 endOfFileHigh;
 
149
        uint32 allocationSizeLow;
 
150
        uint32 allocationSizeHigh;
 
151
        uint32 fileAttributes;
 
152
        uint32 fileNameLength;
 
153
        uint32 eaSize;
 
154
        uint8 shortNameLength;
 
155
        uint8 reserved;
 
156
        char shortName[24];
 
157
        char* fileName;
 
158
}
 
159
FILE_BOTH_DIR_INFORMATION;
 
160
 
 
161
typedef struct _FILE_DIRECTORY_INFORMATION
 
162
{
 
163
        uint32 nextEntryOffset;
 
164
        uint32 fileIndex;
 
165
        FILETIME creationTime;
 
166
        FILETIME lastAccessTime;
 
167
        FILETIME lastWriteTime;
 
168
        FILETIME changeTime;
 
169
        uint32 endOfFileLow;
 
170
        uint32 endOfFileHigh;
 
171
        uint32 allocationSizeLow;
 
172
        uint32 allocationSizeHigh;
 
173
        uint32 fileAttributes;
 
174
        uint32 fileNameLength;
 
175
        char* fileName;
 
176
}
 
177
FILE_DIRECTORY_INFORMATION;
 
178
 
 
179
typedef struct _FILE_FULL_DIR_INFORMATION
 
180
{
 
181
        uint32 nextEntryOffset;
 
182
        uint32 fileIndex;
 
183
        FILETIME creationTime;
 
184
        FILETIME lastAccessTime;
 
185
        FILETIME lastWriteTime;
 
186
        FILETIME changeTime;
 
187
        uint32 endOfFileLow;
 
188
        uint32 endOfFileHigh;
 
189
        uint32 allocationSizeLow;
 
190
        uint32 allocationSizeHigh;
 
191
        uint32 fileAttributes;
 
192
        uint32 fileNameLength;
 
193
        uint32 eaSize;
 
194
        char* fileName;
 
195
}
 
196
FILE_FULL_DIR_INFORMATION;
 
197
 
 
198
typedef struct _FILE_LINK_INFORMATION
 
199
{
 
200
        uint8 replaceIfExists;
 
201
        uint8 reserved1;
 
202
        uint32 reserved2;
 
203
        uint32 reserved3;
 
204
        uint32 rootDirectoryLow;
 
205
        uint32 rootDirectoryHigh;
 
206
        uint32 fileNameLength;
 
207
        char* fileName;
 
208
}
 
209
FILE_LINK_INFORMATION;
 
210
 
 
211
typedef struct _FILE_MODE_INFORMATION
 
212
{
 
213
        uint32 mode;
 
214
}
 
215
FILE_MODE_INFORMATION;
 
216
 
 
217
typedef struct _FILE_NAME_INFORMATION
 
218
{
 
219
        uint32 fileNameLength;
 
220
        char* filename;
 
221
}
 
222
FILE_NAME_INFORMATION;
 
223
 
 
224
typedef struct _FILE_NAMES_INFORMATION
 
225
{
 
226
        uint32 nextEntryOffset;
 
227
        uint32 fileIndex;
 
228
        uint32 fileNameLength;
 
229
        char* filename;
 
230
}
 
231
FILE_NAMES_INFORMATION;
 
232
 
 
233
typedef struct _FILE_NETWORK_OPEN_INFORMATION
 
234
{
 
235
        FILETIME creationTime;
 
236
        FILETIME lastAccessTime;
 
237
        FILETIME lastWriteTime;
 
238
        FILETIME changeTime;
 
239
        uint32 allocationSizeLow;
 
240
        uint32 allocationSizeHigh;
 
241
        uint32 endOfFileLow;
 
242
        uint32 endOfFileHigh;
 
243
        uint32 fileAttributes;
 
244
        uint32 reserved;
 
245
}
 
246
FILE_NETWORK_OPEN_INFORMATION;
 
247
 
 
248
#endif // __TYPES_H
 
249