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.

148 lines
4.2 KiB

  1. /*++
  2. Copyright (c) 2002 Microsoft Corporation
  3. Module Name:
  4. w2kstructdefs.h
  5. Abstract:
  6. structure definitions for a few w2k secedit.h structures
  7. that are different from their xp definitions; specifically
  8. SCE_PROFILE_INFO and SCETYPE
  9. necessary for compatibility with w2k
  10. Author:
  11. Steven Chan (t-schan) July 2002
  12. --*/
  13. #ifndef W2KSTRUCTDEFSH
  14. #define W2KSTRUCTDEFSH
  15. //
  16. // Windows 2000 Profile structure
  17. //
  18. typedef struct _W2K_SCE_PROFILE_INFO {
  19. // Type is used to free the structure by SceFreeMemory
  20. SCETYPE Type;
  21. //
  22. // Area: System access
  23. //
  24. DWORD MinimumPasswordAge;
  25. DWORD MaximumPasswordAge;
  26. DWORD MinimumPasswordLength;
  27. DWORD PasswordComplexity;
  28. DWORD PasswordHistorySize;
  29. DWORD LockoutBadCount;
  30. DWORD ResetLockoutCount;
  31. DWORD LockoutDuration;
  32. DWORD RequireLogonToChangePassword;
  33. DWORD ForceLogoffWhenHourExpire;
  34. PWSTR NewAdministratorName;
  35. PWSTR NewGuestName;
  36. DWORD SecureSystemPartition;
  37. DWORD ClearTextPassword;
  38. union {
  39. struct {
  40. // Area : user settings (scp)
  41. PSCE_NAME_LIST pAccountProfiles;
  42. // Area: privileges
  43. // Name field is the user/group name, Status field is the privilege(s)
  44. // assigned to the user/group
  45. union {
  46. // PSCE_NAME_STATUS_LIST pPrivilegeAssignedTo;
  47. PSCE_PRIVILEGE_VALUE_LIST pPrivilegeAssignedTo;
  48. PSCE_PRIVILEGE_ASSIGNMENT pInfPrivilegeAssignedTo;
  49. } u;
  50. } scp;
  51. struct {
  52. // Area: user settings (sap)
  53. PSCE_NAME_LIST pUserList;
  54. // Area: privileges
  55. PSCE_PRIVILEGE_ASSIGNMENT pPrivilegeAssignedTo;
  56. } sap;
  57. struct {
  58. // Area: user settings (smp)
  59. PSCE_NAME_LIST pUserList;
  60. // Area: privileges
  61. // See sap structure for pPrivilegeAssignedTo
  62. PSCE_PRIVILEGE_ASSIGNMENT pPrivilegeAssignedTo;
  63. } smp;
  64. } OtherInfo;
  65. // Area: group membership
  66. PSCE_GROUP_MEMBERSHIP pGroupMembership;
  67. // Area: Registry
  68. SCE_OBJECTS pRegistryKeys;
  69. // Area: System Services
  70. PSCE_SERVICES pServices;
  71. // System storage
  72. SCE_OBJECTS pFiles;
  73. //
  74. // ds object
  75. //
  76. SCE_OBJECTS pDsObjects;
  77. //
  78. // kerberos policy settings
  79. //
  80. PSCE_KERBEROS_TICKET_INFO pKerberosInfo;
  81. //
  82. // System audit 0-system 1-security 2-application
  83. //
  84. DWORD MaximumLogSize[3];
  85. DWORD AuditLogRetentionPeriod[3];
  86. DWORD RetentionDays[3];
  87. DWORD RestrictGuestAccess[3];
  88. DWORD AuditSystemEvents;
  89. DWORD AuditLogonEvents;
  90. DWORD AuditObjectAccess;
  91. DWORD AuditPrivilegeUse;
  92. DWORD AuditPolicyChange;
  93. DWORD AuditAccountManage;
  94. DWORD AuditProcessTracking;
  95. DWORD AuditDSAccess;
  96. DWORD AuditAccountLogon;
  97. DWORD CrashOnAuditFull;
  98. //
  99. // registry values
  100. //
  101. DWORD RegValueCount;
  102. PSCE_REGISTRY_VALUE_INFO aRegValues;
  103. }W2K_SCE_PROFILE_INFO, *PW2K_SCE_PROFILE_INFO;
  104. typedef enum _W2K_SCE_TYPE {
  105. W2K_SCE_ENGINE_SCP=300, // effective table
  106. W2K_SCE_ENGINE_SAP, // analysis table
  107. W2K_SCE_ENGINE_SCP_INTERNAL,
  108. W2K_SCE_ENGINE_SMP_INTERNAL,
  109. W2K_SCE_ENGINE_SMP, // local table
  110. W2K_SCE_STRUCT_INF,
  111. W2K_SCE_STRUCT_PROFILE,
  112. W2K_SCE_STRUCT_USER,
  113. W2K_SCE_STRUCT_NAME_LIST,
  114. W2K_SCE_STRUCT_NAME_STATUS_LIST,
  115. W2K_SCE_STRUCT_PRIVILEGE,
  116. W2K_SCE_STRUCT_GROUP,
  117. W2K_SCE_STRUCT_OBJECT_LIST,
  118. W2K_SCE_STRUCT_OBJECT_CHILDREN,
  119. W2K_SCE_STRUCT_OBJECT_SECURITY,
  120. W2K_SCE_STRUCT_OBJECT_ARRAY,
  121. W2K_SCE_STRUCT_ERROR_LOG_INFO,
  122. W2K_SCE_STRUCT_SERVICES,
  123. W2K_SCE_STRUCT_PRIVILEGE_VALUE_LIST
  124. } W2KSCETYPE;
  125. #endif