mirror of
https://github.com/reactos/reactos.git
synced 2024-12-27 01:24:38 +00:00
- Implement RtlSetControlSecurityDescriptor
- Remove property set functions from ntdll.def because they are not implemented in Win2K and above. svn path=/trunk/; revision=13492
This commit is contained in:
parent
e37dad5493
commit
5930efc575
3 changed files with 41 additions and 17 deletions
|
@ -2294,6 +2294,11 @@ RtlSetBits (
|
|||
ULONG NumberToSet
|
||||
);
|
||||
|
||||
NTSTATUS STDCALL
|
||||
RtlSetControlSecurityDescriptor(IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
IN SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
|
||||
IN SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet);
|
||||
|
||||
NTSTATUS STDCALL
|
||||
RtlSetDaclSecurityDescriptor (PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
BOOLEAN DaclPresent,
|
||||
|
|
|
@ -321,7 +321,6 @@ RtlCharToInteger@12
|
|||
RtlCheckRegistryKey@8
|
||||
RtlClearAllBits@4
|
||||
RtlClearBits@12
|
||||
;RtlClosePropertySet
|
||||
RtlCompactHeap@8
|
||||
RtlCompareMemory@12
|
||||
RtlCompareMemoryUlong@12
|
||||
|
@ -350,7 +349,6 @@ RtlCreateAtomTable@8
|
|||
RtlCreateEnvironment@8
|
||||
RtlCreateHeap@24
|
||||
RtlCreateProcessParameters@40
|
||||
;RtlCreatePropertySet
|
||||
RtlCreateQueryDebugBuffer@8
|
||||
RtlCreateRegistryKey@8
|
||||
RtlCreateSecurityDescriptor@8
|
||||
|
@ -404,7 +402,6 @@ RtlEnterCriticalSection@4
|
|||
RtlEnumProcessHeaps@8
|
||||
;RtlEnumerateGenericTable
|
||||
;RtlEnumerateGenericTableWithoutSplaying
|
||||
;RtlEnumerateProperties
|
||||
RtlEqualComputerName@8
|
||||
RtlEqualDomainName@8
|
||||
RtlEqualLuid@8
|
||||
|
@ -435,7 +432,6 @@ RtlFindRange@48
|
|||
RtlFindSetBits@12
|
||||
RtlFindSetBitsAndClear@12
|
||||
RtlFirstFreeAce@8
|
||||
;RtlFlushPropertySet
|
||||
RtlFormatCurrentUserKeyPath@4
|
||||
RtlFormatMessage@32
|
||||
RtlFreeAnsiString@4
|
||||
|
@ -468,7 +464,6 @@ RtlGetProcessHeaps@8
|
|||
RtlGetSaclSecurityDescriptor@16
|
||||
;RtlGetUserInfoHeap
|
||||
RtlGetVersion@4
|
||||
;RtlGuidToPropertySetName
|
||||
RtlIdentifierAuthoritySid@4
|
||||
RtlImageDirectoryEntryToData@16
|
||||
RtlImageNtHeader@4
|
||||
|
@ -559,7 +554,6 @@ RtlOpenCurrentUser@8
|
|||
RtlPinAtomInAtomTable@8
|
||||
RtlPrefixString@12
|
||||
RtlPrefixUnicodeString@12
|
||||
;RtlPropertySetNameToGuid
|
||||
;RtlProtectHeap
|
||||
RtlQueryAtomInAtomTable@24
|
||||
RtlQueryEnvironmentVariable_U@12
|
||||
|
@ -568,9 +562,6 @@ RtlQueryInformationAcl@16
|
|||
RtlQueryProcessDebugInformation@12
|
||||
;RtlQueryProcessHeapInformation
|
||||
;RtlQueryProcessLockInformation
|
||||
;RtlQueryProperties
|
||||
;RtlQueryPropertyNames
|
||||
;RtlQueryPropertySet
|
||||
RtlQueryRegistryValues@20
|
||||
;RtlQuerySecurityObject
|
||||
;RtlQueryTagHeap
|
||||
|
@ -594,6 +585,7 @@ RtlSelfRelativeToAbsoluteSD@44
|
|||
RtlSetAllBits@4
|
||||
;RtlSetAttributesSecurityDescriptor
|
||||
RtlSetBits@12
|
||||
RtlSetControlSecurityDescriptor@12
|
||||
RtlSetCurrentDirectory_U@4
|
||||
RtlSetCurrentEnvironment@8
|
||||
RtlSetDaclSecurityDescriptor@16
|
||||
|
@ -601,9 +593,6 @@ RtlSetEnvironmentVariable@12
|
|||
RtlSetGroupSecurityDescriptor@12
|
||||
RtlSetInformationAcl@16
|
||||
RtlSetOwnerSecurityDescriptor@12
|
||||
;RtlSetProperties
|
||||
;RtlSetPropertyNames
|
||||
;RtlSetPropertySetClassId
|
||||
RtlSetSaclSecurityDescriptor@16
|
||||
;RtlSetSecurityObject
|
||||
RtlSetTimeZoneInformation@4
|
||||
|
|
|
@ -40,6 +40,7 @@ RtlCreateSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -278,9 +279,10 @@ RtlSetOwnerSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|||
SecurityDescriptor->Control = SecurityDescriptor->Control | SE_OWNER_DEFAULTED;
|
||||
}
|
||||
|
||||
return(STATUS_SUCCESS);
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -319,6 +321,7 @@ RtlGetOwnerSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -347,6 +350,7 @@ RtlSetGroupSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -578,8 +582,7 @@ RtlMakeSelfRelativeSD(PSECURITY_DESCRIPTOR AbsSD,
|
|||
NTSTATUS STDCALL
|
||||
RtlAbsoluteToSelfRelativeSD(PSECURITY_DESCRIPTOR AbsSD,
|
||||
PSECURITY_DESCRIPTOR RelSD,
|
||||
PULONG BufferLength
|
||||
)
|
||||
PULONG BufferLength)
|
||||
{
|
||||
if (AbsSD->Control & SE_SELF_RELATIVE)
|
||||
{
|
||||
|
@ -611,6 +614,29 @@ RtlGetControlSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
NTSTATUS STDCALL
|
||||
RtlSetControlSecurityDescriptor(IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
IN SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
|
||||
IN SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet)
|
||||
{
|
||||
if (SecurityDescriptor->Revision != SECURITY_DESCRIPTOR_REVISION1)
|
||||
{
|
||||
return STATUS_UNKNOWN_REVISION;
|
||||
}
|
||||
|
||||
/* Zero the 'bits of interest' */
|
||||
SecurityDescriptor->Control &= ~ControlBitsOfInterest;
|
||||
|
||||
/* Set the 'bits to set' */
|
||||
SecurityDescriptor->Control |= (ControlBitsToSet & ControlBitsOfInterest);
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -657,6 +683,7 @@ RtlGetSaclSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -694,6 +721,7 @@ RtlSetSaclSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -759,6 +787,7 @@ RtlSelfRelativeToAbsoluteSD(PSECURITY_DESCRIPTOR RelSD,
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
|
@ -770,9 +799,10 @@ RtlSelfRelativeToAbsoluteSD2(PSECURITY_DESCRIPTOR SelfRelativeSecurityDescriptor
|
|||
return STATUS_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
* @implemented
|
||||
*/
|
||||
BOOLEAN STDCALL
|
||||
RtlValidRelativeSecurityDescriptor(IN PSECURITY_DESCRIPTOR SecurityDescriptorInput,
|
||||
IN ULONG SecurityDescriptorLength,
|
||||
|
|
Loading…
Reference in a new issue