Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

174 lines
5.3 KiB

  1. /******************************************************************************
  2. *
  3. * HYDRIX.H
  4. *
  5. * This file contains definitions for the TerminalServer base.
  6. *
  7. * Copyright Microsoft Corporation 1998
  8. *
  9. *******************************************************************************/
  10. #ifndef __HYDRIX_H__
  11. #define __HYDRIX_H__
  12. #pragma pack(1)
  13. /*=============================================================================
  14. == Client Modules
  15. =============================================================================*/
  16. /*
  17. * Maximum lengths
  18. */
  19. #define MAX_BR_NAME 65 // maximum length of browser name (including null)
  20. #define DOMAIN_LENGTH 17
  21. #define USERNAME_LENGTH 20
  22. #define PASSWORD_LENGTH 14
  23. #define CLIENTNAME_LENGTH 20
  24. #define CLIENTADDRESS_LENGTH 30
  25. #define CLIENTLICENSE_LENGTH 32
  26. #define DIRECTORY_LENGTH 256
  27. #define INITIALPROGRAM_LENGTH 256
  28. #define CLIENTLICENSE_LENGTH 32
  29. #define CLIENTMODEM_LENGTH 40
  30. #define IMEFILENAME_LENGTH 32
  31. /*=============================================================================
  32. == Protocol Drivers - Common data structures
  33. =============================================================================*/
  34. /*
  35. * stack driver classes
  36. *
  37. * NOTE: don't change the order of this structure it will break
  38. * NOTE: the Client. Also, any additions to this structure must
  39. * NOTE: be reflected into the PDCLASS in ICA.H or else we're SOL.
  40. */
  41. typedef enum _SDCLASS {
  42. SdNone, // 0
  43. SdConsole, // 1 no dll
  44. SdNetwork, // 2 tdnetb.dll, tdspx.dll, tdftp.dll tdipx.dll
  45. SdAsync, // 3 tdasync.dll
  46. SdOemTransport, // 4 user transport driver
  47. SdISDN, // 5 not implemented
  48. SdX25, // 6 not implemented
  49. SdModem, // 7 pdmodem.dll
  50. SdOemConnect, // 8 user protocol driver
  51. SdFrame, // 9 pdframe.dll
  52. SdReliable, // 10 pdreli.dll
  53. SdEncrypt, // 11 pdcrypt1.dll
  54. SdCompress, // 12 pdcomp.dll
  55. SdTelnet, // 13 not implemented
  56. SdOemFilter, // 14 user protocol driver
  57. SdNasi, // 15 tdnasi.dll
  58. SdTapi, // 16 pdtapi.dll
  59. SdReserved1, // 17
  60. SdReserved2, // 18
  61. SdReserved3, // 19
  62. SdClass_Maximum, // 20 must be last
  63. } SDCLASS;
  64. /*=============================================================================
  65. == Client Data - Common data structures
  66. =============================================================================*/
  67. /*
  68. * Client Data Name
  69. */
  70. #define CLIENTDATANAME_LENGTH 7
  71. typedef CHAR CLIENTDATANAME[ CLIENTDATANAME_LENGTH + 1 ]; // includes null
  72. typedef CHAR * PCLIENTDATANAME;
  73. /*
  74. * Client data names (CLIENTDATANAME)
  75. *
  76. * name syntax: xxxyyyy<null>
  77. *
  78. * xxx - oem id (CTX - Citrix Systems)
  79. * yyyy - client data name
  80. * <null> - trailing null
  81. */
  82. #define CLIENTDATA_SERVER "CTXSRVR" // WF Server Name
  83. #define CLIENTDATA_USERNAME "CTXUSRN" // WF User Name
  84. #define CLIENTDATA_DOMAIN "CTXDOMN" // WF User Domain Name
  85. /*=============================================================================
  86. == Transport Driver - Common data structures
  87. =============================================================================*/
  88. #define VERSION_HOSTL_TDASYNC 1
  89. #define VERSION_HOSTH_TDASYNC 1
  90. #define VERSION_HOSTL_TDNETB 1
  91. #define VERSION_HOSTH_TDNETB 1
  92. #define VERSION_HOSTL_TDSPX 1
  93. #define VERSION_HOSTH_TDSPX 1
  94. #define VERSION_HOSTL_TDIPX 1
  95. #define VERSION_HOSTH_TDIPX 1
  96. #define VERSION_HOSTL_TDTCP 1
  97. #define VERSION_HOSTH_TDTCP 1
  98. /*=============================================================================
  99. == Winstation Drivers - Common data structures
  100. =============================================================================*/
  101. /*
  102. * Valid full screen row/column combinations
  103. */
  104. typedef struct _FSTEXTMODE {
  105. BYTE Index; // this value is sent by PACKET_SET_VIDEOMODE
  106. BYTE Flags; // Used by the client
  107. USHORT Columns;
  108. USHORT Rows;
  109. USHORT ResolutionX;
  110. USHORT ResolutionY;
  111. BYTE FontSizeX;
  112. BYTE FontSizeY;
  113. } FSTEXTMODE, * PFSTEXTMODE;
  114. /*=============================================================================
  115. == Virtual Drivers - Common data structures
  116. =============================================================================*/
  117. /*
  118. * Virtual Channel Name
  119. */
  120. #define VIRTUALCHANNELNAME_LENGTH 7
  121. typedef CHAR VIRTUALCHANNELNAME[ VIRTUALCHANNELNAME_LENGTH + 1 ]; // includes null
  122. typedef CHAR * PVIRTUALCHANNELNAME;
  123. typedef LONG VIRTUALCHANNELCLASS;
  124. typedef LONG * PVIRTUALCHANNELCLASS;
  125. #define VIRTUAL_THINWIRE "CTXTW " // remote windows data
  126. #define VIRTUAL_MAXIMUM 32 // number of virtual channels
  127. /*
  128. * Structure used to bind virtual channel name to number
  129. */
  130. typedef struct _SD_VCBIND {
  131. VIRTUALCHANNELNAME VirtualName;
  132. USHORT VirtualClass;
  133. ULONG Flags;
  134. } SD_VCBIND, * PSD_VCBIND;
  135. /*
  136. * Flags passed along with binding info
  137. */
  138. #define SD_CHANNEL_FLAG_SHADOW_PERSISTENT 0x00000001
  139. #pragma pack()
  140. #endif //__HYDRIX_H__