Source code of Windows XP (NT5)
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.

145 lines
3.2 KiB

  1. /*++
  2. Copyright (c) 1992 Microsoft Corporation
  3. Module Name:
  4. ssreg.h
  5. Abstract:
  6. Manifests for Registry usage in the server service.
  7. Author:
  8. Chuck Lenzmeier (chuckl) 21-Mar-1992
  9. Revision History:
  10. --*/
  11. #ifndef _SSREG_
  12. #define _SSREG_
  13. //
  14. // Names of server service keys.
  15. //
  16. #define SERVER_REGISTRY_PATH L"LanmanServer"
  17. #define PARAMETERS_REGISTRY_PATH L"LanmanServer\\Parameters"
  18. #define AUTOTUNED_REGISTRY_PATH L"LanmanServer\\AutotunedParameters"
  19. #define SHARES_REGISTRY_PATH L"LanmanServer\\Shares"
  20. #define SHARES_SECURITY_REGISTRY_PATH L"LanmanServer\\Shares\\Security"
  21. #define LINKAGE_REGISTRY_PATH L"LanmanServer\\Linkage"
  22. #define SHARES_DEFAULT_SECURITY_REGISTRY_PATH L"LanmanServer\\DefaultSecurity"
  23. #define BIND_VALUE_NAME L"Bind"
  24. #define SIZE_VALUE_NAME L"Size"
  25. #define DISC_VALUE_NAME L"Disc"
  26. #define COMMENT_VALUE_NAME L"Comment"
  27. #define NULL_SESSION_PIPES_VALUE_NAME L"NullSessionPipes"
  28. #define NULL_SESSION_SHARES_VALUE_NAME L"NullSessionShares"
  29. #define PIPES_NEED_LICENSE_VALUE_NAME L"PipesNeedLicense"
  30. #define ERROR_LOG_IGNORE_VALUE_NAME L"ErrorLogIgnore"
  31. #define OPTIONAL_NAMES_VALUE_NAME L"OptionalNames"
  32. #define SERVICE_DLL_VALUE_NAME L"ServiceDll"
  33. #define NO_REMAP_PIPES_VALUE_NAME L"NoRemapPipes"
  34. #define DISABLE_DOS_CHECKING L"DisableDoS"
  35. #define FULL_PARAMETERS_REGISTRY_PATH L"SYSTEM\\CurrentControlSet\\Services\\" PARAMETERS_REGISTRY_PATH
  36. //
  37. // Names of share "environment variables".
  38. //
  39. #define MAXUSES_VARIABLE_NAME L"MaxUses"
  40. #define PATH_VARIABLE_NAME L"Path"
  41. #define PERMISSIONS_VARIABLE_NAME L"Permissions"
  42. #define REMARK_VARIABLE_NAME L"Remark"
  43. #define TYPE_VARIABLE_NAME L"Type"
  44. #define CSC_VARIABLE_NAME L"CSCFlags"
  45. #define GUID_VARIABLE_NAME L"Guid"
  46. //
  47. // Used to check for Security Descriptor "Upgrade" from NT4 "World" to Win2K "World+Anonymous"
  48. //
  49. #define ANONYMOUS_UPGRADE_NAME L"AnonymousDescriptorsUpgraded"
  50. #define SAVED_ANONYMOUS_RESTRICTION_NAME L"PreviousAnonymousRestriction"
  51. #define FULL_SECURITY_REGISTRY_PATH L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\lanmanserver\\DefaultSecurity"
  52. #define ABBREVIATED_SECURITY_REGISTRY_PATH L"LanmanServer\\DefaultSecurity"
  53. //
  54. // Functions exported by registry.c.
  55. //
  56. VOID
  57. SsAddParameterToRegistry (
  58. PFIELD_DESCRIPTOR Field,
  59. PVOID Value
  60. );
  61. VOID
  62. SsAddShareToRegistry (
  63. IN PSHARE_INFO_2 ShareInfo2,
  64. IN PSECURITY_DESCRIPTOR SecurityDescriptor OPTIONAL,
  65. IN DWORD CSCState
  66. );
  67. NET_API_STATUS
  68. SsBindToTransports (
  69. VOID
  70. );
  71. NET_API_STATUS
  72. SsCheckRegistry (
  73. VOID
  74. );
  75. NET_API_STATUS
  76. SsEnumerateStickyShares (
  77. IN OUT PSRVSVC_SHARE_ENUM_INFO ShareEnumInfo
  78. );
  79. BOOLEAN
  80. SsGetDefaultSdFromRegistry (
  81. IN PWCH ValueName,
  82. OUT PSECURITY_DESCRIPTOR *FileSD
  83. );
  84. VOID
  85. SsWriteDefaultSdToRegistry (
  86. IN PWCH ValueName,
  87. IN PSECURITY_DESCRIPTOR FileSD
  88. );
  89. NET_API_STATUS
  90. SsLoadConfigurationParameters (
  91. VOID
  92. );
  93. NET_API_STATUS
  94. SsRecreateStickyShares (
  95. VOID
  96. );
  97. NET_API_STATUS
  98. SsRemoveShareFromRegistry (
  99. LPTSTR NetName
  100. );
  101. //
  102. // Functions used by registry.c that are elsewhere but there is no convenient
  103. // place to put the prototype
  104. //
  105. DWORD
  106. ComputeTransportAddressClippedLength(
  107. IN PCHAR TransportAddress,
  108. IN ULONG TransportAddressLength
  109. );
  110. #endif // ndef _SSREG_