#ifndef _NTRTL_H
NTSYSAPI
NTSTATUS
NTAPI
RtlGetSaclSecurityDescriptor(
_In_ PSECURITY_DESCRIPTOR SecurityDescriptor,
_Out_ PBOOLEAN SaclPresent,
_Out_ PACL *Sacl,
_Out_ PBOOLEAN SaclDefaulted
);
View code on GitHub
// ntifs.h
NTSYSAPI NTSTATUS RtlGetSaclSecurityDescriptor(
[in] PSECURITY_DESCRIPTOR SecurityDescriptor,
[out] PBOOLEAN SaclPresent,
[out] PACL *Sacl,
[out] PBOOLEAN SaclDefaulted
);
View the official Windows Driver Kit DDI reference
This function is documented in Windows Driver Kit.
The RtlGetSaclSecurityDescriptor routine returns a pointer to the system ACL (SACL) for a security descriptor.
SecurityDescriptor
[in]Pointer to the SECURITY_DESCRIPTOR whose SACL is to be returned.
SaclPresent
[out]Pointer to a Boolean variable that indicates the presence of a SACL in the specified security descriptor. If this variable receives TRUE, the security descriptor contains a SACL, and the remaining output parameters receive valid values. If this variable receives FALSE, the security descriptor does not contain a SACL, and the remaining output parameters do not receive valid values.
Sacl
[out]Pointer to a variable that receives the address of the SACL for the security descriptor. If the security descriptor does not have a SACL, this variable does not receive a value. If the security descriptor has a NULL SACL, this variable receives NULL.
SaclDefaulted
[out]Pointer to a Boolean variable that receives the value of the SE_SACL_DEFAULTED flag in the security descriptor's SECURITY_DESCRIPTOR_CONTROL structure if a SACL exists for the security descriptor.
RtlGetSaclSecurityDescriptor returns STATUS_SUCCESS or an appropriate NTSTATUS value such as the following:
Return code | Description |
---|---|
STATUS_UNKNOWN_REVISION | The security descriptor's revision level is unknown or is not supported. This is an error code. |
For more information about security and access control, see Windows security model for driver developers and the documentation on these topics in the Windows SDK.