PspIsContextAdmin
UINT8 __stdcall PspIsContextAdmin(){
void *PrimaryToken;
UINT8 IsAdmin;
struct _SECURITY_SUBJECT_CONTEXT SubjectContext;
memset(&SubjectContext, 0, sizeof(SubjectContext));
SeCaptureSubjectContext(&SubjectContext);
SeLockSubjectContext(&SubjectContext);
PrimaryToken = SubjectContext.PrimaryToken;
if( SubjectContext.ClientToken )
PrimaryToken = SubjectContext.ClientToken;
IsAdmin = SeTokenIsAdmin(PrimaryToken);
SeUnlockSubjectContext(&SubjectContext);
SeReleaseSubjectContext(&SubjectContext);
return IsAdmin;
}Referenced by:
NtPowerInformation
NtSetInformationJobObject
PopPowerInformationInternal
PspSetEnergyTrackingStateJobTree