/[rdesktop]/sourceforge.net/trunk/rdesktop/constants.h
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /sourceforge.net/trunk/rdesktop/constants.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 10 by matty, Tue Aug 15 10:23:24 2000 UTC revision 359 by forsberg, Thu Apr 3 13:52:41 2003 UTC
# Line 1  Line 1 
1  /*  /*
2     rdesktop: A Remote Desktop Protocol client.     rdesktop: A Remote Desktop Protocol client.
3     Miscellaneous protocol constants     Miscellaneous protocol constants
4     Copyright (C) Matthew Chapman 1999-2000     Copyright (C) Matthew Chapman 1999-2002
5        
6     This program is free software; you can redistribute it and/or modify     This program is free software; you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by     it under the terms of the GNU General Public License as published by
# Line 24  Line 24 
24  /* ISO PDU codes */  /* ISO PDU codes */
25  enum ISO_PDU_CODE  enum ISO_PDU_CODE
26  {  {
27          ISO_PDU_CR = 0xE0, /* Connection Request */          ISO_PDU_CR = 0xE0,      /* Connection Request */
28          ISO_PDU_CC = 0xD0, /* Connection Confirm */          ISO_PDU_CC = 0xD0,      /* Connection Confirm */
29          ISO_PDU_DR = 0x80, /* Disconnect Request */          ISO_PDU_DR = 0x80,      /* Disconnect Request */
30          ISO_PDU_DT = 0xF0, /* Data */          ISO_PDU_DT = 0xF0,      /* Data */
31          ISO_PDU_ER = 0x70  /* Error */          ISO_PDU_ER = 0x70       /* Error */
32  };  };
33    
34  /* MCS PDU codes */  /* MCS PDU codes */
35  enum MCS_PDU_TYPE  enum MCS_PDU_TYPE
36  {  {
37          MCS_EDRQ = 1,   /* Erect Domain Request */          MCS_EDRQ = 1,           /* Erect Domain Request */
38          MCS_DPUM = 8,   /* Disconnect Provider Ultimatum */          MCS_DPUM = 8,           /* Disconnect Provider Ultimatum */
39          MCS_AURQ = 10,  /* Attach User Request */          MCS_AURQ = 10,          /* Attach User Request */
40          MCS_AUCF = 11,  /* Attach User Confirm */          MCS_AUCF = 11,          /* Attach User Confirm */
41          MCS_CJRQ = 14,  /* Channel Join Request */          MCS_CJRQ = 14,          /* Channel Join Request */
42          MCS_CJCF = 15,  /* Channel Join Confirm */          MCS_CJCF = 15,          /* Channel Join Confirm */
43          MCS_SDRQ = 25,  /* Send Data Request */          MCS_SDRQ = 25,          /* Send Data Request */
44          MCS_SDIN = 26   /* Send Data Indication */          MCS_SDIN = 26           /* Send Data Indication */
45  };  };
46    
47  #define MCS_CONNECT_INITIAL     0x7f65  #define MCS_CONNECT_INITIAL     0x7f65
# Line 72  enum MCS_PDU_TYPE Line 72  enum MCS_PDU_TYPE
72    
73  #define SEC_TAG_CLI_INFO        0xc001  #define SEC_TAG_CLI_INFO        0xc001
74  #define SEC_TAG_CLI_CRYPT       0xc002  #define SEC_TAG_CLI_CRYPT       0xc002
75    #define SEC_TAG_CLI_4           0xc004
76    #define SEC_TAG_CLI_CHANNELS    0xc003
77    
78  #define SEC_TAG_PUBKEY          0x0006  #define SEC_TAG_PUBKEY          0x0006
79  #define SEC_TAG_KEYSIG          0x0008  #define SEC_TAG_KEYSIG          0x0008
80    
81  #define SEC_RSA_MAGIC           0x31415352 /* RSA1 */  #define SEC_RSA_MAGIC           0x31415352      /* RSA1 */
82    
83  /* RDP licensing constants */  /* RDP licensing constants */
84  #define LICENCE_TOKEN_SIZE      10  #define LICENCE_TOKEN_SIZE      10
# Line 86  enum MCS_PDU_TYPE Line 88  enum MCS_PDU_TYPE
88  #define LICENCE_TAG_DEMAND      0x0201  #define LICENCE_TAG_DEMAND      0x0201
89  #define LICENCE_TAG_AUTHREQ     0x0202  #define LICENCE_TAG_AUTHREQ     0x0202
90  #define LICENCE_TAG_ISSUE       0x0203  #define LICENCE_TAG_ISSUE       0x0203
91    #define LICENCE_TAG_REISSUE     0x0204
92    #define LICENCE_TAG_PRESENT     0x0212
93  #define LICENCE_TAG_REQUEST     0x0213  #define LICENCE_TAG_REQUEST     0x0213
94  #define LICENCE_TAG_AUTHRESP    0x0215  #define LICENCE_TAG_AUTHRESP    0x0215
95  #define LICENCE_TAG_RESULT      0x02ff  #define LICENCE_TAG_RESULT      0x02ff
96    
97    #define LICENCE_TAG_DEMAND_5    0x0301
98    #define LICENCE_TAG_AUTHREQ_5   0x0302
99    #define LICENCE_TAG_ISSUE_5     0x0303
100    #define LICENCE_TAG_REISSUE_5   0x0304
101    #define LICENCE_TAG_PRESENT_5   0x0312
102    #define LICENCE_TAG_REQUEST_5   0x0313
103    #define LICENCE_TAG_AUTHRESP_5  0x0315
104    #define LICENCE_TAG_RESULT_5    0x03ff
105    
106    
107    
108  #define LICENCE_TAG_USER        0x000f  #define LICENCE_TAG_USER        0x000f
109  #define LICENCE_TAG_HOST        0x0010  #define LICENCE_TAG_HOST        0x0010
110    
# Line 132  enum RDP_UPDATE_PDU_TYPE Line 147  enum RDP_UPDATE_PDU_TYPE
147    
148  enum RDP_POINTER_PDU_TYPE  enum RDP_POINTER_PDU_TYPE
149  {  {
150          RDP_POINTER_MOVE = 3          RDP_POINTER_MOVE = 3,
151            RDP_POINTER_COLOR = 6,
152            RDP_POINTER_CACHED = 7
153  };  };
154    
155  enum RDP_INPUT_DEVICE  enum RDP_INPUT_DEVICE
# Line 146  enum RDP_INPUT_DEVICE Line 163  enum RDP_INPUT_DEVICE
163    
164  /* Device flags */  /* Device flags */
165  #define KBD_FLAG_RIGHT          0x0001  #define KBD_FLAG_RIGHT          0x0001
166    #define KBD_FLAG_EXT            0x0100
167  #define KBD_FLAG_QUIET          0x1000  #define KBD_FLAG_QUIET          0x1000
168  #define KBD_FLAG_DOWN           0x4000  #define KBD_FLAG_DOWN           0x4000
169  #define KBD_FLAG_UP             0x8000  #define KBD_FLAG_UP             0x8000
170    
171    /* These are for synchronization; not for keystrokes */
172    #define KBD_FLAG_SCROLL   0x0001
173    #define KBD_FLAG_NUMLOCK  0x0002
174    #define KBD_FLAG_CAPITAL  0x0004
175    
176    /* See T.128 */
177    #define RDP_KEYPRESS 0
178    #define RDP_KEYRELEASE (KBD_FLAG_DOWN | KBD_FLAG_UP)
179    
180  #define MOUSE_FLAG_MOVE         0x0800  #define MOUSE_FLAG_MOVE         0x0800
181  #define MOUSE_FLAG_BUTTON1      0x1000  #define MOUSE_FLAG_BUTTON1      0x1000
182  #define MOUSE_FLAG_BUTTON2      0x2000  #define MOUSE_FLAG_BUTTON2      0x2000
183  #define MOUSE_FLAG_BUTTON3      0x4000  #define MOUSE_FLAG_BUTTON3      0x4000
184    #define MOUSE_FLAG_BUTTON4      0x0280
185    #define MOUSE_FLAG_BUTTON5      0x0380
186  #define MOUSE_FLAG_DOWN         0x8000  #define MOUSE_FLAG_DOWN         0x8000
187    
188  /* Raster operation masks */  /* Raster operation masks */
# Line 163  enum RDP_INPUT_DEVICE Line 192  enum RDP_INPUT_DEVICE
192  #define ROP2_COPY       0xc  #define ROP2_COPY       0xc
193  #define ROP2_XOR        0x6  #define ROP2_XOR        0x6
194  #define ROP2_AND        0x8  #define ROP2_AND        0x8
195    #define ROP2_NXOR       0x9
196  #define ROP2_OR         0xe  #define ROP2_OR         0xe
197    
198  #define MIX_TRANSPARENT 0  #define MIX_TRANSPARENT 0
199  #define MIX_OPAQUE      1  #define MIX_OPAQUE      1
200    
201  #define TEXT2_IMPLICIT_X 0x20  #define TEXT2_VERTICAL          0x04
202    #define TEXT2_IMPLICIT_X        0x20
203    
204  /* RDP capabilities */  /* RDP capabilities */
205  #define RDP_CAPSET_GENERAL      1  #define RDP_CAPSET_GENERAL      1       /* Maps to generalCapabilitySet in T.128 page 138 */
206  #define RDP_CAPLEN_GENERAL      0x18  #define RDP_CAPLEN_GENERAL      0x18
207  #define OS_MAJOR_TYPE_UNIX      4  #define OS_MAJOR_TYPE_UNIX      4
208  #define OS_MINOR_TYPE_XSERVER   7  #define OS_MINOR_TYPE_XSERVER   7
# Line 206  enum RDP_INPUT_DEVICE Line 237  enum RDP_INPUT_DEVICE
237  #define RDP_CAPLEN_UNKNOWN      0x9C  #define RDP_CAPLEN_UNKNOWN      0x9C
238    
239  #define RDP_SOURCE              "MSTSC"  #define RDP_SOURCE              "MSTSC"
240    
241    /* Logon flags */
242    #define RDP_LOGON_NORMAL        0x33
243    #define RDP_LOGON_AUTO          0x8
244    
245    /* Keymap flags */
246    #define MapRightShiftMask   (1<<0)
247    #define MapLeftShiftMask    (1<<1)
248    #define MapShiftMask (MapRightShiftMask | MapLeftShiftMask)
249    
250    #define MapRightAltMask     (1<<2)
251    #define MapLeftAltMask      (1<<3)
252    #define MapAltGrMask MapRightAltMask
253    
254    #define MapRightCtrlMask    (1<<4)
255    #define MapLeftCtrlMask     (1<<5)
256    #define MapCtrlMask (MapRightCtrlMask | MapLeftCtrlMask)
257    
258    #define MapRightWinMask     (1<<6)
259    #define MapLeftWinMask      (1<<7)
260    #define MapWinMask (MapRightWinMask | MapLeftWinMask)
261    
262    #define MapNumLockMask      (1<<8)
263    #define MapCapsLockMask     (1<<9)
264    
265    #define MapLocalStateMask   (1<<10)
266    
267    #define MapInhibitMask      (1<<11)
268    
269    #define MASK_ADD_BITS(var, mask) (var |= mask)
270    #define MASK_REMOVE_BITS(var, mask) (var &= ~mask)
271    #define MASK_HAS_BITS(var, mask) ((var & mask)>0)
272    #define MASK_CHANGE_BIT(var, mask, active) (var = ((var & ~mask) | (active ? mask : 0)))

Legend:
Removed from v.10  
changed lines
  Added in v.359

  ViewVC Help
Powered by ViewVC 1.1.26