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.

204 lines
4.1 KiB

  1. /*++
  2. Copyright (c) 1996 Microsoft Corporation
  3. Module Name:
  4. scesetup.h
  5. Abstract:
  6. This module defines the exported data structures for system setup and
  7. network/oem/component setup
  8. Author:
  9. Jin Huang (jinhuang) 21-Aug-1997
  10. Revision History:
  11. --*/
  12. #ifndef _scesetup_
  13. #define _scesetup_
  14. #ifdef __cplusplus
  15. extern "C"{
  16. #endif
  17. #include "setupapi.h"
  18. #ifndef SCE_AREA_DEFINED
  19. #define SCE_AREA_DEFINED
  20. typedef DWORD AREA_INFORMATION;
  21. #define AREA_SECURITY_POLICY 0x0001L
  22. #define AREA_USER_SETTINGS 0x0002L
  23. #define AREA_GROUP_MEMBERSHIP 0x0004L
  24. #define AREA_PRIVILEGES 0x0008L
  25. #define AREA_DS_OBJECTS 0x0010L
  26. #define AREA_REGISTRY_SECURITY 0x0020L
  27. #define AREA_FILE_SECURITY 0x0040L
  28. #define AREA_SYSTEM_SERVICE 0x0080L
  29. #define AREA_ATTACHMENTS 0x8000L
  30. #define AREA_ALL 0xFFFFL
  31. #endif
  32. typedef
  33. BOOL(CALLBACK *PSCE_NOTIFICATION_CALLBACK_ROUTINE)(
  34. IN HANDLE NotificationHandle,
  35. IN UINT NotificationCode,
  36. IN UINT NotificationSpecificValue,
  37. IN LPARAM lParam
  38. );
  39. #define SCESETUP_CONFIGURE_SECURITY 0x0
  40. #define SCESETUP_UPGRADE_SYSTEM 0x1
  41. #define SCESETUP_UPDATE_FILE_KEY 0x2
  42. #define SCESETUP_QUERY_TICKS 0x4
  43. #define SCESETUP_RECONFIG_SECURITY 0x8
  44. #define SCESETUP_BIND_NO_AUTH 0x80
  45. #define SCESETUP_NOTIFICATION_TICKS 1
  46. DWORD
  47. WINAPI
  48. SceSetupSystemByInfName(
  49. IN PWSTR InfFullName,
  50. IN PCWSTR LogFileName OPTIONAL,
  51. IN AREA_INFORMATION Area,
  52. IN UINT nFlag,
  53. IN PSCE_NOTIFICATION_CALLBACK_ROUTINE pSceNotificationCallBack OPTIONAL,
  54. IN OUT PVOID pValue OPTIONAL
  55. );
  56. DWORD
  57. WINAPI
  58. SceSetupUpdateSecurityFile(
  59. IN PWSTR FileFullName,
  60. IN UINT nFlag,
  61. IN PWSTR SDText
  62. );
  63. DWORD
  64. WINAPI
  65. SceSetupMoveSecurityFile(
  66. IN PWSTR FileToSetSecurity,
  67. IN PWSTR FileToSaveInDB OPTIONAL,
  68. IN PWSTR SDText OPTIONAL
  69. );
  70. DWORD
  71. WINAPI
  72. SceSetupUnwindSecurityFile(
  73. IN PWSTR FileFullName,
  74. IN PSECURITY_DESCRIPTOR pSDBackup
  75. );
  76. DWORD
  77. WINAPI
  78. SceSetupUpdateSecurityKey(
  79. IN HKEY hKeyRoot,
  80. IN PWSTR KeyPath,
  81. IN UINT nFlag,
  82. IN PWSTR SDText
  83. );
  84. DWORD
  85. WINAPI
  86. SceSetupUpdateSecurityService(
  87. IN PWSTR ServiceName,
  88. IN DWORD StartType,
  89. IN PWSTR SDText
  90. );
  91. DWORD
  92. WINAPI
  93. SceSetupBackupSecurity(
  94. IN LPTSTR LogFileName OPTIONAL // default to %windir%\security\logs\backup.log
  95. );
  96. DWORD
  97. WINAPI
  98. SceSetupConfigureServices(
  99. IN UINT SetupProductType
  100. );
  101. typedef
  102. DWORD(CALLBACK *PSCE_PROMOTE_CALLBACK_ROUTINE)(
  103. IN PWSTR StringUpdate
  104. );
  105. #define SCE_DCPROMO_LOG_PATH TEXT("%windir%\\security\\logs\\scedcpro.log")
  106. #define SCE_PROMOTE_FLAG_UPGRADE 0x01L
  107. #define SCE_PROMOTE_FLAG_REPLICA 0x02L
  108. #define SCE_PROMOTE_FLAG_DEMOTE 0x04L
  109. DWORD
  110. WINAPI
  111. SceDcPromoteSecurity(
  112. IN DWORD dwPromoteOptions,
  113. IN PSCE_PROMOTE_CALLBACK_ROUTINE pScePromoteCallBack OPTIONAL
  114. );
  115. DWORD
  116. WINAPI
  117. SceDcPromoteSecurityEx(
  118. IN HANDLE ClientToken,
  119. IN DWORD dwPromoteOptions,
  120. IN PSCE_PROMOTE_CALLBACK_ROUTINE pScePromoteCallBack OPTIONAL
  121. );
  122. #define STR_DEFAULT_DOMAIN_GPO_GUID TEXT("31B2F340-016D-11D2-945F-00C04FB984F9")
  123. #define STR_DEFAULT_DOMAIN_CONTROLLER_GPO_GUID TEXT("6AC1786C-016F-11D2-945F-00C04fB984F9")
  124. DWORD
  125. WINAPI
  126. SceDcPromoCreateGPOsInSysvol(
  127. IN LPTSTR DomainDnsName,
  128. IN LPTSTR SysvolRoot,
  129. IN DWORD dwPromoteOptions,
  130. IN PSCE_PROMOTE_CALLBACK_ROUTINE pScePromoteCallBack OPTIONAL
  131. );
  132. DWORD
  133. WINAPI
  134. SceDcPromoCreateGPOsInSysvolEx(
  135. IN HANDLE ClientToken,
  136. IN LPTSTR DomainDnsName,
  137. IN LPTSTR SysvolRoot,
  138. IN DWORD dwPromoteOptions,
  139. IN PSCE_PROMOTE_CALLBACK_ROUTINE pScePromoteCallBack OPTIONAL
  140. );
  141. DWORD
  142. WINAPI
  143. SceSetupRootSecurity();
  144. DWORD
  145. WINAPI
  146. SceEnforceSecurityPolicyPropagation();
  147. /*
  148. NTSTATUS
  149. WINAPI
  150. SceNotifyPolicyDelta (
  151. IN SECURITY_DB_TYPE DbType,
  152. IN LARGE_INTEGER SerialNumber,
  153. IN SECURITY_DB_DELTA_TYPE DeltaType,
  154. IN SECURITY_DB_OBJECT_TYPE ObjectType,
  155. IN ULONG ObjectRid,
  156. IN PSID ObjectSid,
  157. IN PUNICODE_STRING ObjectName,
  158. IN DWORD ReplicateImmediately,
  159. IN PSAM_DELTA_DATA MemberId
  160. );
  161. */
  162. #ifdef __cplusplus
  163. }
  164. #endif
  165. #endif