mirror of
https://github.com/reactos/reactos.git
synced 2024-06-26 07:51:52 +00:00
[SAMLIB]
Fix the SamQuerySecurityObject implementation. svn path=/trunk/; revision=60892
This commit is contained in:
parent
6800c4f9e2
commit
3f83392306
|
@ -1609,23 +1609,19 @@ SamQuerySecurityObject(IN SAM_HANDLE ObjectHandle,
|
|||
IN SECURITY_INFORMATION SecurityInformation,
|
||||
OUT PSECURITY_DESCRIPTOR *SecurityDescriptor)
|
||||
{
|
||||
SAMPR_SR_SECURITY_DESCRIPTOR LocalSecurityDescriptor;
|
||||
PSAMPR_SR_SECURITY_DESCRIPTOR pLocalSecurityDescriptor;
|
||||
PSAMPR_SR_SECURITY_DESCRIPTOR SamSecurityDescriptor = NULL;
|
||||
NTSTATUS Status;
|
||||
|
||||
TRACE("SamQuerySecurityObject(%p %lu %p)\n",
|
||||
ObjectHandle, SecurityInformation, SecurityDescriptor);
|
||||
|
||||
LocalSecurityDescriptor.Length = 0;
|
||||
LocalSecurityDescriptor.SecurityDescriptor = NULL;
|
||||
*SecurityDescriptor = NULL;
|
||||
|
||||
RpcTryExcept
|
||||
{
|
||||
pLocalSecurityDescriptor = &LocalSecurityDescriptor;
|
||||
|
||||
Status = SamrQuerySecurityObject((SAMPR_HANDLE)ObjectHandle,
|
||||
SecurityInformation,
|
||||
&pLocalSecurityDescriptor);
|
||||
&SamSecurityDescriptor);
|
||||
}
|
||||
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||
{
|
||||
|
@ -1633,7 +1629,17 @@ SamQuerySecurityObject(IN SAM_HANDLE ObjectHandle,
|
|||
}
|
||||
RpcEndExcept;
|
||||
|
||||
*SecurityDescriptor = LocalSecurityDescriptor.SecurityDescriptor;
|
||||
TRACE("SamSecurityDescriptor: %p\n", SamSecurityDescriptor);
|
||||
|
||||
if (SamSecurityDescriptor != NULL)
|
||||
{
|
||||
TRACE("SamSecurityDescriptor->Length: %lu\n", SamSecurityDescriptor->Length);
|
||||
TRACE("SamSecurityDescriptor->SecurityDescriptor: %p\n", SamSecurityDescriptor->SecurityDescriptor);
|
||||
|
||||
*SecurityDescriptor = SamSecurityDescriptor->SecurityDescriptor;
|
||||
|
||||
midl_user_free(SamSecurityDescriptor);
|
||||
}
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue