PopSessionInputChange
VOID __stdcall PopSessionInputChange(
UINT64 SessionId,
POWER_SESSION_RIT_STATE *SessionInput,
POWER_SESSION_TIMEOUTS *SessionTimeouts){
BOOLEAN Active;
ULONG LastInputTime;
unsigned int v5;
bool v7;
_EVENT_DESCRIPTOR *v8;
POWER_SESSION_TIMEOUTS *v9;
Active = SessionInput->Active;
LastInputTime = SessionInput->LastInputTime;
v5 = SessionId;
PopPrintEx(3ui64, (INT8 *)"PopAdaptive:>>>>> %s session %u input is %s\n");
v7 = (_DWORD)PopConsoleContext == v5 && v5 != -1;
v8 = (_EVENT_DESCRIPTOR *)POP_ETW_ADPM_ACTIVE_INPUT;
if( !Active )
v8 = (_EVENT_DESCRIPTOR *)&POP_ETW_ADPM_PASSIVE_INPUT;
PopDiagTraceSessionStates(v8, v5, v7);
PopAcquireAdaptiveLock(1u);
if( Active )
{
if( v7 )
PopConsoleSessionActiveInput(v5, LastInputTime, SessionTimeouts);
else
PopRemoteSessionActiveInput(v5, v9, (POWER_SESSION_TIMEOUTS)SessionTimeouts);
}
else if( v7 )
{
PopConsoleSessionPassiveInput(v5, LastInputTime, SessionTimeouts);
}
else
{
PopSetSessionUserStatus(v5, PowerUserInactive);
SessionTimeouts->DisplayTimeout = PopGetDisplayTimeout(v5);
SessionTimeouts->InputTimeout = PopInputTimeout;
}
PopReleaseAdaptiveLock();
}Referenced by:
NtPowerInformation