AlpcpQuerySidMessage
INT64 __fastcall AlpcpQuerySidMessage(
_ALPC_PORT *PortObject,
_KALPC_MESSAGE *Message,
VOID *Sid,
UINT64 Length,
INT64 ReturnLength){
unsigned int v8;
INT64 result;
unsigned int SidToken;
char FreeDynamicSecurity[8];
VOID *AccessToken;
_SECURITY_CLIENT_CONTEXT DynamicSecurity;
v8 = Length;
memset((INT64)&DynamicSecurity, 0i64);
AccessToken = 0i64;
FreeDynamicSecurity[0] = 0;
result = AlpcpGetEffectiveTokenMessage(
PortObject,
Message,
&AccessToken,
&DynamicSecurity,
(UINT8 *)FreeDynamicSecurity);
if( (int)result >= 0 )
{
SidToken = AlpcpQuerySidToken(AccessToken, Sid, v8, (UINT64 *)ReturnLength);
if( FreeDynamicSecurity[0] )
HalPutDmaAdapter((PADAPTER_OBJECT)DynamicSecurity.ClientToken);
return SidToken;
}
return result;
}Referenced by:
NtAlpcQueryInformationMessage