AdtpBuildLogonIdStrings
NTSTATUS __stdcall AdtpBuildLogonIdStrings(
_LUID *LogonId,
PVOID *ppSid,
UINT8 *FreeSid,
_UNICODE_STRING *ResultantString1,
UINT8 *FreeWhenDone1,
_UNICODE_STRING *ResultantString2,
UINT8 *FreeWhenDone2){
int LogonSessionAccountInfo;
WCHAR v12;
NTSTATUS v13;
WCHAR v15;
WCHAR v16;
LogonSessionAccountInfo = SepGetLogonSessionAccountInfo(LogonId, ResultantString1, ResultantString2, ppSid);
v13 = LogonSessionAccountInfo;
if( LogonSessionAccountInfo < 0 )
{
if( LogonId->LowPart != 999 || LogonId->HighPart )
{
if( LogonSessionAccountInfo != -1073741729 )
return v13;
RtlInitUnicodeString(ResultantString1, L"-", v12);
RtlInitUnicodeString(ResultantString2, L"-", v16);
*FreeWhenDone1 = 0;
*FreeWhenDone2 = 0;
if( ppSid )
{
*FreeSid = 0;
*ppSid = &AdtpNullSid;
}
}
else
{
RtlInitUnicodeString(ResultantString1, L"SYSTEM", v12);
RtlInitUnicodeString(ResultantString2, L"SYSTEM", v15);
*FreeWhenDone1 = 0;
*FreeWhenDone2 = 0;
}
return 0;
}
if( ResultantString1->Buffer )
*FreeWhenDone1 = 1;
else
RtlInitUnicodeString(ResultantString1, L"-", v12);
if( ResultantString2->Buffer )
*FreeWhenDone2 = 1;
else
RtlInitUnicodeString(ResultantString2, L"-", v12);
if( ppSid && FreeSid )
*FreeSid = 1;
return v13;
}Referenced by:
AdtpPackageParameters