Implement RtlGetSecurityDescriptorRMControl, RtlSetSecurityDescriptorRMControl, SetSecurityDescriptorControl, GetSecurityDescriptorRMControl and SetSecurityDescriptorRMControl.

svn path=/trunk/; revision=13493
This commit is contained in:
Eric Kohl
2005-02-11 15:52:38 +00:00
parent 5930efc575
commit 1ca75be5f0
8 changed files with 142 additions and 30 deletions
+15 -14
View File
@@ -50,22 +50,23 @@
#define FAILED_ACCESS_ACE_FLAG (0x80)
/* SECURITY_DESCRIPTOR_CONTROL */
#define SECURITY_DESCRIPTOR_REVISION (1)
#define SECURITY_DESCRIPTOR_REVISION1 (1)
#define SECURITY_DESCRIPTOR_MIN_LENGTH (20)
#define SE_OWNER_DEFAULTED (1)
#define SE_GROUP_DEFAULTED (2)
#define SE_DACL_PRESENT (4)
#define SE_DACL_DEFAULTED (8)
#define SE_SACL_PRESENT (16)
#define SE_SACL_DEFAULTED (32)
#define SE_SELF_RELATIVE (32768)
#define SECURITY_DESCRIPTOR_REVISION (1)
#define SECURITY_DESCRIPTOR_REVISION1 (1)
#define SECURITY_DESCRIPTOR_MIN_LENGTH (20)
#define SE_OWNER_DEFAULTED (0x0001)
#define SE_GROUP_DEFAULTED (0x0002)
#define SE_DACL_PRESENT (0x0004)
#define SE_DACL_DEFAULTED (0x0008)
#define SE_SACL_PRESENT (0x0010)
#define SE_SACL_DEFAULTED (0x0020)
#define SE_RM_CONTROL_VALID (0x4000)
#define SE_SELF_RELATIVE (0x8000)
/* PRIVILEGE_SET */
#define SE_PRIVILEGE_ENABLED_BY_DEFAULT (0x1L)
#define SE_PRIVILEGE_ENABLED (0x2L)
#define SE_PRIVILEGE_USED_FOR_ACCESS (0x80000000L)
#define PRIVILEGE_SET_ALL_NECESSARY (0x1)
#define SE_PRIVILEGE_ENABLED_BY_DEFAULT (0x1L)
#define SE_PRIVILEGE_ENABLED (0x2L)
#define SE_PRIVILEGE_USED_FOR_ACCESS (0x80000000L)
#define PRIVILEGE_SET_ALL_NECESSARY (0x1)
/* SID */
#define SID_REVISION (1)
+8
View File
@@ -1337,6 +1337,10 @@ RtlGetSaclSecurityDescriptor (PSECURITY_DESCRIPTOR SecurityDescriptor,
PACL* Sacl,
PBOOLEAN SaclDefaulted);
BOOLEAN STDCALL
RtlGetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR SecurityDescriptor,
PUCHAR RMControl);
NTSTATUS
STDCALL
RtlGetSetBootStatusData(
@@ -2321,6 +2325,10 @@ RtlSetSaclSecurityDescriptor (PSECURITY_DESCRIPTOR SecurityDescriptor,
PACL Sacl,
BOOLEAN SaclDefaulted);
VOID STDCALL
RtlSetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR SecurityDescriptor,
PUCHAR RMControl);
NTSTATUS STDCALL
RtlSetInformationAcl (PACL Acl,
PVOID Information,
+8 -7
View File
@@ -36,13 +36,14 @@
/* Security descriptor control. */
#define SECURITY_DESCRIPTOR_REVISION (1)
#define SECURITY_DESCRIPTOR_MIN_LENGTH (20)
#define SE_OWNER_DEFAULTED (1)
#define SE_GROUP_DEFAULTED (2)
#define SE_DACL_PRESENT (4)
#define SE_DACL_DEFAULTED (8)
#define SE_SACL_PRESENT (16)
#define SE_SACL_DEFAULTED (32)
#define SE_SELF_RELATIVE (32768)
#define SE_OWNER_DEFAULTED (0x0001)
#define SE_GROUP_DEFAULTED (0x0002)
#define SE_DACL_PRESENT (0x0004)
#define SE_DACL_DEFAULTED (0x0008)
#define SE_SACL_PRESENT (0x0010)
#define SE_SACL_DEFAULTED (0x0020)
#define SE_RM_CONTROL_VALID (0x4000)
#define SE_SELF_RELATIVE (0x8000)
#endif
/* This is defined in the Win 32 API headers as something else: */