~ubuntu-branches/debian/stretch/rdesktop/stretch

« back to all changes in this revision

Viewing changes to constants.h

  • Committer: Bazaar Package Importer
  • Author(s): Tomas Fasth
  • Date: 2005-05-24 13:31:34 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20050524133134-6hn24gprfmo91sfv
Tags: 1.4.1-1
New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
2
   rdesktop: A Remote Desktop Protocol client.
3
3
   Miscellaneous protocol constants
4
 
   Copyright (C) Matthew Chapman 1999-2002
 
4
   Copyright (C) Matthew Chapman 1999-2005
5
5
   
6
6
   This program is free software; you can redistribute it and/or modify
7
7
   it under the terms of the GNU General Public License as published by
8
8
   the Free Software Foundation; either version 2 of the License, or
9
9
   (at your option) any later version.
10
 
   
 
10
 
11
11
   This program is distributed in the hope that it will be useful,
12
12
   but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
14
   GNU General Public License for more details.
15
 
   
 
15
 
16
16
   You should have received a copy of the GNU General Public License
17
17
   along with this program; if not, write to the Free Software
18
18
   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21
21
/* TCP port for Remote Desktop Protocol */
22
22
#define TCP_PORT_RDP 3389
23
23
 
 
24
#define DEFAULT_CODEPAGE        "UTF-8"
 
25
#define WINDOWS_CODEPAGE        "UTF-16LE"
 
26
 
24
27
/* ISO PDU codes */
25
28
enum ISO_PDU_CODE
26
29
{
117
120
        RDP_DATA_PDU_BELL = 34,
118
121
        RDP_DATA_PDU_LOGON = 38,
119
122
        RDP_DATA_PDU_FONT2 = 39,
 
123
        RDP_DATA_PDU_KEYBOARD_INDICATORS = 41,
120
124
        RDP_DATA_PDU_DISCONNECT = 47
121
125
};
122
126
 
199
203
#define TEXT2_VERTICAL          0x04
200
204
#define TEXT2_IMPLICIT_X        0x20
201
205
 
 
206
#define ALTERNATE       1
 
207
#define WINDING         2
 
208
 
 
209
/* RDP bitmap cache (version 2) constants */
 
210
#define BMPCACHE2_C0_CELLS      0x78
 
211
#define BMPCACHE2_C1_CELLS      0x78
 
212
#define BMPCACHE2_C2_CELLS      0x150
 
213
#define BMPCACHE2_NUM_PSTCELLS  0x9f6
 
214
 
 
215
#define PDU_FLAG_FIRST          0x01
 
216
#define PDU_FLAG_LAST           0x02
 
217
 
202
218
/* RDP capabilities */
203
219
#define RDP_CAPSET_GENERAL      1       /* Maps to generalCapabilitySet in T.128 page 138 */
204
220
#define RDP_CAPLEN_GENERAL      0x18
231
247
#define RDP_CAPSET_COLCACHE     10
232
248
#define RDP_CAPLEN_COLCACHE     0x08
233
249
 
234
 
#define RDP_CAPSET_UNKNOWN      13
235
 
#define RDP_CAPLEN_UNKNOWN      0x9C
 
250
#define RDP_CAPSET_BMPCACHE2    19
 
251
#define RDP_CAPLEN_BMPCACHE2    0x28
 
252
#define BMPCACHE2_FLAG_PERSIST  ((uint32)1<<31)
236
253
 
237
254
#define RDP_SOURCE              "MSTSC"
238
255
 
239
256
/* Logon flags */
240
 
#define RDP_LOGON_NORMAL        0x33
241
 
#define RDP_LOGON_AUTO          0x8
242
 
#define RDP_LOGON_BLOB          0x100
 
257
#define RDP_LOGON_AUTO          0x0008
 
258
#define RDP_LOGON_NORMAL        0x0033
 
259
#define RDP_LOGON_COMPRESSION   0x0080  /* mppc compression with 8kB histroy buffer */
 
260
#define RDP_LOGON_BLOB          0x0100
 
261
#define RDP_LOGON_COMPRESSION2  0x0200  /* rdp5 mppc compression with 64kB history buffer */
 
262
#define RDP_LOGON_LEAVE_AUDIO   0x2000
 
263
 
 
264
#define RDP5_DISABLE_NOTHING    0x00
 
265
#define RDP5_NO_WALLPAPER       0x01
 
266
#define RDP5_NO_FULLWINDOWDRAG  0x02
 
267
#define RDP5_NO_MENUANIMATIONS  0x04
 
268
#define RDP5_NO_THEMING         0x08
 
269
#define RDP5_NO_CURSOR_SHADOW   0x20
 
270
#define RDP5_NO_CURSORSETTINGS  0x40    /* disables cursor blinking */
 
271
 
 
272
/* compression types */
 
273
#define RDP_MPPC_BIG            0x01
 
274
#define RDP_MPPC_COMPRESSED     0x20
 
275
#define RDP_MPPC_RESET          0x40
 
276
#define RDP_MPPC_FLUSH          0x80
 
277
#define RDP_MPPC_DICT_SIZE      65536
 
278
 
 
279
#define RDP5_COMPRESSED         0x80
243
280
 
244
281
/* Keymap flags */
245
282
#define MapRightShiftMask   (1<<0)
314
351
 
315
352
/* NT status codes for RDPDR */
316
353
#define STATUS_SUCCESS                  0x00000000
 
354
#define STATUS_NOT_IMPLEMENTED          0x00000001
 
355
#define STATUS_PENDING                  0x00000103
 
356
 
 
357
#define STATUS_NO_MORE_FILES            0x80000006
 
358
#define STATUS_DEVICE_PAPER_EMPTY       0x8000000e
 
359
#define STATUS_DEVICE_POWERED_OFF       0x8000000f
 
360
#define STATUS_DEVICE_OFF_LINE          0x80000010
 
361
#define STATUS_DEVICE_BUSY              0x80000011
 
362
 
 
363
#define STATUS_INVALID_HANDLE           0xc0000008
317
364
#define STATUS_INVALID_PARAMETER        0xc000000d
 
365
#define STATUS_NO_SUCH_FILE             0xc000000f
318
366
#define STATUS_INVALID_DEVICE_REQUEST   0xc0000010
319
367
#define STATUS_ACCESS_DENIED            0xc0000022
 
368
#define STATUS_OBJECT_NAME_COLLISION    0xc0000035
 
369
#define STATUS_DISK_FULL                0xc000007f
 
370
#define STATUS_FILE_IS_A_DIRECTORY      0xc00000ba
 
371
#define STATUS_NOT_SUPPORTED            0xc00000bb
 
372
#define STATUS_TIMEOUT                  0xc0000102
 
373
#define STATUS_NOTIFY_ENUM_DIR          0xc000010c
 
374
#define STATUS_CANCELLED                0xc0000120
 
375
 
 
376
 
 
377
/* RDPDR constants */
 
378
#define RDPDR_MAX_DEVICES               0x10
 
379
#define DEVICE_TYPE_SERIAL              0x01
 
380
#define DEVICE_TYPE_PARALLEL            0x02
 
381
#define DEVICE_TYPE_PRINTER             0x04
 
382
#define DEVICE_TYPE_DISK                0x08
 
383
#define DEVICE_TYPE_SCARD               0x20
 
384
 
 
385
#define FILE_DIRECTORY_FILE             0x00000001
 
386
#define FILE_NON_DIRECTORY_FILE         0x00000040
 
387
#define FILE_COMPLETE_IF_OPLOCKED       0x00000100
 
388
#define FILE_DELETE_ON_CLOSE            0x00001000
 
389
#define FILE_OPEN_FOR_FREE_SPACE_QUERY  0x00800000
 
390
 
 
391
/* RDP5 disconnect PDU */
 
392
#define exDiscReasonNoInfo                              0x0000
 
393
#define exDiscReasonAPIInitiatedDisconnect              0x0001
 
394
#define exDiscReasonAPIInitiatedLogoff                  0x0002
 
395
#define exDiscReasonServerIdleTimeout                   0x0003
 
396
#define exDiscReasonServerLogonTimeout                  0x0004
 
397
#define exDiscReasonReplacedByOtherConnection           0x0005
 
398
#define exDiscReasonOutOfMemory                         0x0006
 
399
#define exDiscReasonServerDeniedConnection              0x0007
 
400
#define exDiscReasonServerDeniedConnectionFips          0x0008
 
401
#define exDiscReasonLicenseInternal                     0x0100
 
402
#define exDiscReasonLicenseNoLicenseServer              0x0101
 
403
#define exDiscReasonLicenseNoLicense                    0x0102
 
404
#define exDiscReasonLicenseErrClientMsg                 0x0103
 
405
#define exDiscReasonLicenseHwidDoesntMatchLicense       0x0104
 
406
#define exDiscReasonLicenseErrClientLicense             0x0105
 
407
#define exDiscReasonLicenseCantFinishProtocol           0x0106
 
408
#define exDiscReasonLicenseClientEndedProtocol          0x0107
 
409
#define exDiscReasonLicenseErrClientEncryption          0x0108
 
410
#define exDiscReasonLicenseCantUpgradeLicense           0x0109
 
411
#define exDiscReasonLicenseNoRemoteConnections          0x010a