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.

113 lines
2.4 KiB

  1. /********************************************************************/
  2. /** Copyright(c) 1989 Microsoft Corporation. **/
  3. /********************************************************************/
  4. //***
  5. //
  6. // Filename: rasccp.h
  7. //
  8. // Description: Contains structure and contstants definitions.
  9. //
  10. // History:
  11. // Aprint 11,1994. NarenG Created original version.
  12. //
  13. #ifndef _RASCCP_
  14. #define _RASCCP_
  15. //
  16. // CCP Option types
  17. //
  18. #define CCP_OPTION_OUI 0
  19. #define CCP_OPTION_MSPPC 18
  20. #define CCP_OPTION_MSNT31RAS 254
  21. #define CCP_OPTION_MAX 254
  22. #define CCP_N_MSPPC 1
  23. #define CCP_N_OUI 2
  24. #define CCP_N_PUBLIC 4
  25. typedef struct _CCP_OPTIONS
  26. {
  27. DWORD Negotiate;
  28. RAS_COMPRESSION_INFO CompInfo;
  29. } CCP_OPTIONS, *PCCP_OPTIONS;
  30. //
  31. // Local.Want: Options to request.
  32. // Contains desired value.
  33. // Only non-default options need to be negotiated.
  34. // Initially, all are default.
  35. // local.Work: Options currently being negotiated.
  36. // Value is valid only when negotiate bit is set.
  37. //
  38. // Remote.Want: Options to suggest by NAK if not present in REQ.
  39. // Contains desired value.
  40. // Remote.Work: Options currently being negotiated.
  41. // Value is valid only when negotiate bit is set.
  42. //
  43. typedef struct _CCP_SIDE
  44. {
  45. CCP_OPTIONS Want;
  46. CCP_OPTIONS Work;
  47. } CCP_SIDE, *PCCP_SIDE;
  48. //
  49. // CCP control block
  50. //
  51. typedef struct _CCPCB
  52. {
  53. HPORT hPort;
  54. DWORD dwDeviceType;
  55. BOOL fServer;
  56. BOOL fForceEncryption;
  57. BOOL fDisableCompression;
  58. DWORD fLastEncryptionBitSent;
  59. DWORD fOldLastEncryptionBitSent;
  60. CCP_SIDE Local;
  61. CCP_SIDE Remote;
  62. }CCPCB, *PCCPCB;
  63. //
  64. // Globals.
  65. //
  66. #ifdef CCPGLOBALS
  67. #define GLOBALS
  68. #define EXTERN
  69. #else
  70. #define EXTERN extern
  71. #endif
  72. //
  73. // Trace ID
  74. //
  75. EXTERN DWORD DwCcpTraceId
  76. #ifdef GLOBALS
  77. = 0
  78. #endif
  79. ;
  80. #define TRACE_RASCCP (0x00010000|TRACE_USE_MASK|TRACE_USE_MSEC|TRACE_USE_DATE)
  81. #define DUMPW(X,Y) TraceDumpExA(DwCcpTraceId,1,(LPBYTE)X,Y,4,1,NULL)
  82. #define DUMPB(X,Y) TraceDumpExA(DwCcpTraceId,1,(LPBYTE)X,Y,1,1,NULL)
  83. #endif