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.

168 lines
6.6 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1995.
  5. //
  6. // File: spreg.h
  7. //
  8. // Contents:
  9. //
  10. // Classes:
  11. //
  12. // Functions:
  13. //
  14. // History: 12-02-97 jbanes Remove CertificateAuthorities entry.
  15. //
  16. //----------------------------------------------------------------------------
  17. #ifndef _SPREG_H_
  18. #define _SPREG_H_
  19. /*
  20. *[HKEY_LOCAL_MACHINE]
  21. * [System]
  22. * [CurrentControlSet]
  23. * [Control]
  24. * [SecurityProviders]
  25. * [SCHANNEL]
  26. * EventLogging:REG_DWORD: - Flag specifing event logging level
  27. * LogFile:REG_SZ: - debug logfile name (Not published)
  28. * LogLevel:REG_SZ: - debug logging level flags.
  29. * DebugBreak:REG_DWORD: - Flag specifing what type of errors cause a debug break (Not published)
  30. * MaximumCacheSize:REG_DWORD - maximum number of cache elements
  31. * ClientCacheTime:REG_DWORD - time to expire client side cache elements
  32. * ServerCacheTime:REG_DWORD - time to expire server side cache elements
  33. * MultipleProcessClientCache:REG_DWORD - whether to support multi-process caching
  34. *
  35. * [Protocols]
  36. * [SSL2]
  37. * [Client]
  38. * Enabled:REG_DWORD: - Is this protocol enabled
  39. * [Server]
  40. * Enabled:REG_DWORD: - Is this protocol enabled [SSL2]
  41. * [SSL3]
  42. * [Client]
  43. * Enabled:REG_DWORD: - Is this protocol enabled
  44. * [Server]
  45. * Enabled:REG_DWORD: - Is this protocol enabled
  46. * [PCT1]
  47. * [Client]
  48. * Enabled:REG_DWORD: - Is this protocol enabled
  49. * [Server]
  50. * Enabled:REG_DWORD: - Is this protocol enabled
  51. *
  52. * [Ciphers]
  53. * [Cipher Name]
  54. * Enabled:REG_DWORD: - Enable Mask
  55. * [RC4_128]
  56. * Enabled:REG_DWORD: - Is this Ciphers enabled
  57. * [Hashes]
  58. * [Hash Name]
  59. * Enabled:REG_DWORD: - Enable Mask
  60. * [KeyExchangeAlgorithms]
  61. * [Exch Name]
  62. * Enabled:REG_DWORD: - Enable Mask
  63. *
  64. */
  65. // FIPS registry entries
  66. #define SP_REG_FIPS_BASE_KEY TEXT("System\\CurrentControlSet\\Control\\Lsa")
  67. #define SP_REG_FIPS_POLICY TEXT("FipsAlgorithmPolicy")
  68. /* Key Names */
  69. #define SP_REG_KEY_BASE TEXT("System\\CurrentControlSet\\Control\\SecurityProviders\\SCHANNEL")
  70. #define SP_REG_KEY_PROTOCOL TEXT("Protocols")
  71. #define SP_REG_KEY_CIPHERS TEXT("Ciphers")
  72. #define SP_REG_KEY_HASHES TEXT("Hashes")
  73. #define SP_REG_KEY_KEYEXCH TEXT("KeyExchangeAlgorithms")
  74. /* Value Names */
  75. #define SP_REG_VAL_EVENTLOG TEXT("EventLogging")
  76. #define SP_REG_VAL_LOGFILE "LogFile"
  77. #define SP_REG_VAL_LOGLEVEL TEXT("LogLevel")
  78. #define SP_REG_VAL_BREAK TEXT("DebugBreak")
  79. #define SP_REG_VAL_MANUAL_CRED_VALIDATION TEXT("ManualCredValidation")
  80. #define SP_REG_VAL_DISABLED_BY_DEFAULT TEXT("DisabledByDefault")
  81. #define SP_REG_VAL_MULTI_PROC_CLIENT_CACHE TEXT("MultipleProcessClientCache")
  82. #define SP_REG_VAL_SEND_ISSUER_LIST TEXT("SendTrustedIssuerList")
  83. #define SP_REG_VAL_CERT_MAPPING_METHODS TEXT("CertificateMappingMethods")
  84. #define SP_REG_VAL_MAXUMUM_CACHE_SIZE TEXT("MaximumCacheSize")
  85. #define SP_REG_VAL_CLIENT_CACHE_TIME TEXT("ClientCacheTime")
  86. #define SP_REG_VAL_SERVER_CACHE_TIME TEXT("ServerCacheTime")
  87. #define SP_REG_VAL_RNG_SEED TEXT("RNGSeed")
  88. // Issuer cache used with many-to-one certificate mapping
  89. #define SP_REG_VAL_ISSUER_CACHE_SIZE TEXT("IssuerCacheSize")
  90. #define SP_REG_VAL_ISSUER_CACHE_TIME TEXT("IssuerCacheTime")
  91. #define SP_REG_VAL_ENABLED TEXT("Enabled")
  92. #define SP_REG_VAL_CACERT TEXT("CACert")
  93. #define SP_REG_VAL_CERT_TYPE TEXT("Type")
  94. #define SP_REG_VAL_SERVER_TIMEOUT TEXT("ServerHandshakeTimeout")
  95. #define SP_REG_KEY_CLIENT TEXT("Client")
  96. #define SP_REG_KEY_SERVER TEXT("Server")
  97. #define SP_REG_KEY_PCT1 TEXT("PCT 1.0")
  98. #define SP_REG_KEY_SSL2 TEXT("SSL 2.0")
  99. #define SP_REG_KEY_SSL3 TEXT("SSL 3.0")
  100. #define SP_REG_KEY_TLS1 TEXT("TLS 1.0")
  101. #define MANUAL_CRED_VALIDATION_SETTING FALSE
  102. #define PCT_CLIENT_DISABLED_SETTING TRUE
  103. #define SSL2_CLIENT_DISABLED_SETTING FALSE
  104. #define DEFAULT_EVENT_LOGGING_SETTING DEB_ERROR
  105. #define DEFAULT_ENABLED_PROTOCOLS_SETTING (SP_PROT_SSL2 | SP_PROT_SSL3 | SP_PROT_TLS1 | SP_PROT_UNI)
  106. extern BOOL g_fManualCredValidation;
  107. extern BOOL g_PctClientDisabledByDefault;
  108. extern BOOL g_Ssl2ClientDisabledByDefault;
  109. extern BOOL g_fFranceLocale;
  110. extern BOOL g_fSendIssuerList;
  111. #define SP_REG_CERTMAP_SUBJECT_FLAG 0X0001
  112. #define SP_REG_CERTMAP_ISSUER_FLAG 0x0002
  113. #define SP_REG_CERTMAP_UPN_FLAG 0x0004
  114. #define SP_REG_CERTMAP_S4U2SELF_FLAG 0x0008
  115. #define DEFAULT_CERTMAP_SETTING (SP_REG_CERTMAP_SUBJECT_FLAG | \
  116. SP_REG_CERTMAP_ISSUER_FLAG | \
  117. SP_REG_CERTMAP_UPN_FLAG | \
  118. SP_REG_CERTMAP_S4U2SELF_FLAG)
  119. extern DWORD g_dwCertMappingMethods;
  120. extern BOOL g_SslS4U2SelfInitialized;
  121. BOOL SPLoadRegOptions(void);
  122. void SPUnloadRegOptions(void);
  123. /* Event Logging Definitions */
  124. #define SP_EVLOG_RESOURCE 0x0001
  125. #define SP_EVLOG_ASSERT 0x0002
  126. #define SP_EVLOG_ILLEGAL_MESSAGE 0x0004
  127. #define SP_EVLOG_SECAUDIT 0x0008
  128. #define SP_LOG_ERROR 0x0001
  129. #define SP_LOG_WARNING 0x0002
  130. #define SP_LOG_TRACE 0x0004
  131. #define SP_LOG_ALLOC 0x0008
  132. #define SP_LOG_RES 0x0010
  133. #define SP_LOG_TIMESTAMP 0x20000000
  134. #define SP_LOG_BUFFERS 0x40000000
  135. #define SP_LOG_FILE 0x80000000
  136. #define SP_BREAK_ERROR 0x0001
  137. #define SP_BREAK_WARNING 0x0002
  138. #define SP_BREAK_ENTRY 0x0004
  139. #endif // _SPREG_H_