Go to the source code of this file.
Classes | |
struct | _MMSUPPORT_FLAGS |
struct | _MMSUPPORT |
struct | _PS_IMPERSONATION_INFORMATION |
struct | _EPROCESS_QUOTA_BLOCK |
struct | _WOW64_PROCESS |
struct | _EPROCESS |
struct | _ETHREAD |
struct | _INITIAL_PEB |
struct | _PS_JOB_TOKEN_FILTER |
struct | _EJOB |
struct | _IMAGE_INFO |
struct | _WIN32_JOBCALLOUT_PARAMETERS |
struct | _WIN32_POWEREVENT_PARAMETERS |
struct | _WIN32_POWERSTATE_PARAMETERS |
Defines | |
#define | PSP_INVALID_ID ((ULONG_PTR)(0x82)<<((sizeof(ULONG_PTR)-1)*8)) |
#define | MEMORY_PRIORITY_BACKGROUND 0 |
#define | MEMORY_PRIORITY_WASFOREGROUND 1 |
#define | MEMORY_PRIORITY_FOREGROUND 2 |
#define | PS_WS_TRIM_FROM_EXE_HEADER 1 |
#define | PS_WS_TRIM_BACKGROUND_ONLY_APP 2 |
#define | PS_SET_BITS(Flags, Flag) ExInterlockedSetBits (Flags, Flag) |
#define | PS_CLEAR_BITS(Flags, Flag) ExInterlockedClearBits (Flags, Flag) |
#define | PS_SET_CLEAR_BITS(Flags, sFlag, cFlag) ExInterlockedSetClearBits (Flags, sFlag, cFlag) |
#define | PS_JOB_STATUS_NOT_REALLY_ACTIVE 0x00000001 |
#define | PS_JOB_STATUS_ACCOUNTING_FOLDED 0x00000002 |
#define | PS_JOB_STATUS_NEW_PROCESS_REPORTED 0x00000004 |
#define | PS_JOB_STATUS_EXIT_PROCESS_REPORTED 0x00000008 |
#define | PS_JOB_STATUS_REPORT_COMMIT_CHANGES 0x00000010 |
#define | PS_JOB_STATUS_LAST_REPORT_MEMORY 0x00000020 |
#define | PS_GET_THREAD_CREATE_TIME(Thread) ((Thread)->CreateTime.QuadPart >> 3) |
#define | PS_SET_THREAD_CREATE_TIME(Thread, InputCreateTime) ((Thread)->CreateTime.QuadPart = (InputCreateTime.QuadPart << 3)) |
#define | THREAD_TO_PROCESS(thread) ((thread)->ThreadsProcess) |
#define | IS_SYSTEM_THREAD(thread) |
#define | PsGetCurrentProcess() (CONTAINING_RECORD(((KeGetCurrentThread())->ApcState.Process),EPROCESS,Pcb)) |
#define | PsGetCurrentThread() (CONTAINING_RECORD((KeGetCurrentThread()),ETHREAD,Tcb)) |
#define | PsLockProcessSecurityFields() ExAcquireFastMutex( &PsProcessSecurityLock ) |
#define | PsFreeProcessSecurityFields() ExReleaseFastMutex( &PsProcessSecurityLock ) |
#define | IMAGE_ADDRESSING_MODE_32BIT 3 |
#define | PsDereferencePrimaryToken(T) (ObDereferenceObject((T))) |
#define | PsProcessAuditId(Process) ((Process)->UniqueProcessId) |
#define | PsDereferenceImpersonationToken(T) |
#define | PsIsThreadTerminating(T) (T)->HasTerminated |
Typedefs | |
typedef _MMSUPPORT_FLAGS | MMSUPPORT_FLAGS |
typedef _MMSUPPORT | MMSUPPORT |
typedef MMSUPPORT * | PMMSUPPORT |
typedef _PS_IMPERSONATION_INFORMATION | PS_IMPERSONATION_INFORMATION |
typedef _PS_IMPERSONATION_INFORMATION * | PPS_IMPERSONATION_INFORMATION |
typedef _EPROCESS_QUOTA_BLOCK | EPROCESS_QUOTA_BLOCK |
typedef _EPROCESS_QUOTA_BLOCK * | PEPROCESS_QUOTA_BLOCK |
typedef _WOW64_PROCESS | WOW64_PROCESS |
typedef _WOW64_PROCESS * | PWOW64_PROCESS |
typedef _EPROCESS | EPROCESS |
typedef EPROCESS * | PEPROCESS |
typedef _ETHREAD | ETHREAD |
typedef ETHREAD * | PETHREAD |
typedef _INITIAL_PEB | INITIAL_PEB |
typedef _INITIAL_PEB * | PINITIAL_PEB |
typedef _PS_JOB_TOKEN_FILTER | PS_JOB_TOKEN_FILTER |
typedef _PS_JOB_TOKEN_FILTER * | PPS_JOB_TOKEN_FILTER |
typedef _EJOB | EJOB |
typedef EJOB * | PEJOB |
typedef VOID(* | PLEGO_NOTIFY_ROUTINE )(PKTHREAD Thread) |
typedef VOID(* | PCREATE_PROCESS_NOTIFY_ROUTINE )(IN HANDLE ParentId, IN HANDLE ProcessId, IN BOOLEAN Create) |
typedef VOID(* | PCREATE_THREAD_NOTIFY_ROUTINE )(IN HANDLE ProcessId, IN HANDLE ThreadId, IN BOOLEAN Create) |
typedef _IMAGE_INFO | IMAGE_INFO |
typedef _IMAGE_INFO * | PIMAGE_INFO |
typedef VOID(* | PLOAD_IMAGE_NOTIFY_ROUTINE )(IN PUNICODE_STRING FullImageName, IN HANDLE ProcessId, IN PIMAGE_INFO ImageInfo) |
typedef enum _PSLOCKPROCESSMODE | PSLOCKPROCESSMODE |
typedef NTSTATUS(* | PKWIN32_PROCESS_CALLOUT )(IN PEPROCESS Process, IN BOOLEAN Initialize) |
typedef enum _PSW32JOBCALLOUTTYPE | PSW32JOBCALLOUTTYPE |
typedef _WIN32_JOBCALLOUT_PARAMETERS | WIN32_JOBCALLOUT_PARAMETERS |
typedef _WIN32_JOBCALLOUT_PARAMETERS * | PKWIN32_JOBCALLOUT_PARAMETERS |
typedef NTSTATUS(* | PKWIN32_JOB_CALLOUT )(IN PKWIN32_JOBCALLOUT_PARAMETERS Parm) |
typedef enum _PSW32THREADCALLOUTTYPE | PSW32THREADCALLOUTTYPE |
typedef NTSTATUS(* | PKWIN32_THREAD_CALLOUT )(IN PETHREAD Thread, IN PSW32THREADCALLOUTTYPE CalloutType) |
typedef enum _PSPOWEREVENTTYPE | PSPOWEREVENTTYPE |
typedef _WIN32_POWEREVENT_PARAMETERS | WIN32_POWEREVENT_PARAMETERS |
typedef _WIN32_POWEREVENT_PARAMETERS * | PKWIN32_POWEREVENT_PARAMETERS |
typedef _WIN32_POWERSTATE_PARAMETERS | WIN32_POWERSTATE_PARAMETERS |
typedef _WIN32_POWERSTATE_PARAMETERS * | PKWIN32_POWERSTATE_PARAMETERS |
typedef NTSTATUS(* | PKWIN32_POWEREVENT_CALLOUT )(IN PKWIN32_POWEREVENT_PARAMETERS Parm) |
typedef NTSTATUS(* | PKWIN32_POWERSTATE_CALLOUT )(IN PKWIN32_POWERSTATE_PARAMETERS Parm) |
typedef enum _PSPROCESSPRIORITYMODE | PSPROCESSPRIORITYMODE |
Enumerations | |
enum | _PSLOCKPROCESSMODE { PsLockPollOnTimeout, PsLockReturnTimeout, PsLockWaitForever, PsLockIAmExiting } |
enum | _PSW32JOBCALLOUTTYPE { PsW32JobCalloutSetInformation, PsW32JobCalloutAddProcess, PsW32JobCalloutTerminate } |
enum | _PSW32THREADCALLOUTTYPE { PsW32ThreadCalloutInitialize, PsW32ThreadCalloutExit } |
enum | _PSPOWEREVENTTYPE { PsW32FullWake, PsW32EventCode, PsW32PowerPolicyChanged, PsW32SystemPowerState, PsW32SystemTime, PsW32DisplayState, PsW32CapabilitiesChanged, PsW32SetStateFailed, PsW32GdiOff, PsW32GdiOn } |
enum | _PSPROCESSPRIORITYMODE { PsProcessPriorityBackground, PsProcessPriorityForeground, PsProcessPrioritySpinning } |
Functions | |
BOOLEAN | PsChangeJobMemoryUsage (SSIZE_T Amount) |
VOID | PsReportProcessMemoryLimitViolation (VOID) |
VOID | PsEnforceExecutionTimeLimits (VOID) |
BOOLEAN | PsInitSystem (IN ULONG Phase, IN PLOADER_PARAMETER_BLOCK LoaderBlock) |
NTSTATUS | PsLocateSystemDll (VOID) |
VOID | PsChangeQuantumTable (BOOLEAN ModifyActiveProcesses, ULONG PrioritySeparation) |
VOID | PsExitSpecialApc (IN PKAPC Apc, IN PKNORMAL_ROUTINE *NormalRoutine, IN PVOID *NormalContext, IN PVOID *SystemArgument1, IN PVOID *SystemArgument2) |
NTKERNELAPI NTSTATUS | PsCreateSystemThread (OUT PHANDLE ThreadHandle, IN ULONG DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN HANDLE ProcessHandle OPTIONAL, OUT PCLIENT_ID ClientId OPTIONAL, IN PKSTART_ROUTINE StartRoutine, IN PVOID StartContext) |
NTKERNELAPI NTSTATUS | PsTerminateSystemThread (IN NTSTATUS ExitStatus) |
NTSTATUS | PsCreateSystemProcess (OUT PHANDLE ProcessHandle, IN ULONG DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL) |
ULONG | PsSetLegoNotifyRoutine (PLEGO_NOTIFY_ROUTINE LegoNotifyRoutine) |
NTSTATUS | PsSetCreateProcessNotifyRoutine (IN PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine, IN BOOLEAN Remove) |
NTSTATUS | PsSetCreateThreadNotifyRoutine (IN PCREATE_THREAD_NOTIFY_ROUTINE NotifyRoutine) |
NTSTATUS | PsSetLoadImageNotifyRoutine (IN PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine) |
NTSTATUS | PsAssignImpersonationToken (IN PETHREAD Thread, IN HANDLE Token) |
NTKERNELAPI PACCESS_TOKEN | PsReferencePrimaryToken (IN PEPROCESS Process) |
NTKERNELAPI PACCESS_TOKEN | PsReferenceImpersonationToken (IN PETHREAD Thread, OUT PBOOLEAN CopyOnOpen, OUT PBOOLEAN EffectiveOnly, OUT PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel) |
PACCESS_TOKEN | PsReferenceEffectiveToken (IN PETHREAD Thread, OUT PTOKEN_TYPE TokenType, OUT PBOOLEAN EffectiveOnly, OUT PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel) |
LARGE_INTEGER | PsGetProcessExitTime (VOID) |
VOID | PsCallImageNotifyRoutines (IN PUNICODE_STRING FullImageName, IN HANDLE ProcessId, IN PIMAGE_INFO ImageInfo) |
NTSTATUS | PsImpersonateClient (IN PETHREAD Thread, IN PACCESS_TOKEN Token, IN BOOLEAN CopyOnOpen, IN BOOLEAN EffectiveOnly, IN SECURITY_IMPERSONATION_LEVEL ImpersonationLevel) |
BOOLEAN | PsDisableImpersonation (IN PETHREAD Thread, IN PSE_IMPERSONATION_STATE ImpersonationState) |
VOID | PsRestoreImpersonation (IN PETHREAD Thread, IN PSE_IMPERSONATION_STATE ImpersonationState) |
NTKERNELAPI VOID | PsRevertToSelf (VOID) |
NTSTATUS | PsOpenTokenOfThread (IN HANDLE ThreadHandle, IN BOOLEAN OpenAsSelf, OUT PACCESS_TOKEN *Token, OUT PBOOLEAN CopyOnOpen, OUT PBOOLEAN EffectiveOnly, OUT PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel) |
NTSTATUS | PsOpenTokenOfProcess (IN HANDLE ProcessHandle, OUT PACCESS_TOKEN *Token) |
NTSTATUS | PsOpenTokenOfJob (IN HANDLE JobHandle, OUT PACCESS_TOKEN *Token) |
NTSTATUS | PsLookupProcessThreadByCid (IN PCLIENT_ID Cid, OUT PEPROCESS *Process OPTIONAL, OUT PETHREAD *Thread) |
NTKERNELAPI NTSTATUS | PsLookupProcessByProcessId (IN HANDLE ProcessId, OUT PEPROCESS *Process) |
NTKERNELAPI NTSTATUS | PsLookupThreadByThreadId (IN HANDLE ThreadId, OUT PETHREAD *Thread) |
VOID | PsChargePoolQuota (IN PEPROCESS Process, IN POOL_TYPE PoolType, IN ULONG_PTR Amount) |
VOID | PsReturnPoolQuota (IN PEPROCESS Process, IN POOL_TYPE PoolType, IN ULONG_PTR Amount) |
VOID | PspContextToKframes (OUT PKTRAP_FRAME TrapFrame, OUT PKEXCEPTION_FRAME ExceptionFrame, IN PCONTEXT Context) |
VOID | PspContextFromKframes (OUT PKTRAP_FRAME TrapFrame, OUT PKEXCEPTION_FRAME ExceptionFrame, IN PCONTEXT Context) |
VOID | PsReturnSharedPoolQuota (IN PEPROCESS_QUOTA_BLOCK QuotaBlock, IN ULONG_PTR PagedAmount, IN ULONG_PTR NonPagedAmount) |
PEPROCESS_QUOTA_BLOCK | PsChargeSharedPoolQuota (IN PEPROCESS Process, IN ULONG_PTR PagedAmount, IN ULONG_PTR NonPagedAmount) |
NTSTATUS | PsLockProcess (IN PEPROCESS Process, IN KPROCESSOR_MODE WaitMode, IN PSLOCKPROCESSMODE LockMode) |
VOID | PsUnlockProcess (IN PEPROCESS Process) |
BOOLEAN | PsForwardException (IN PEXCEPTION_RECORD ExceptionRecord, IN BOOLEAN DebugException, IN BOOLEAN SecondChance) |
NTKERNELAPI VOID | PsEstablishWin32Callouts (IN PKWIN32_PROCESS_CALLOUT ProcessCallout, IN PKWIN32_THREAD_CALLOUT ThreadCallout, IN PKWIN32_GLOBALATOMTABLE_CALLOUT GlobalAtomTableCallout, IN PKWIN32_POWEREVENT_CALLOUT PowerEventCallout, IN PKWIN32_POWERSTATE_CALLOUT PowerStateCallout, IN PKWIN32_JOB_CALLOUT JobCallout, IN PVOID BatchFlushRoutine) |
NTKERNELAPI VOID | PsSetProcessPriorityByClass (IN PEPROCESS Process, IN PSPROCESSPRIORITYMODE PriorityMode) |
HANDLE | PsGetCurrentProcessId (VOID) |
HANDLE | PsGetCurrentThreadId (VOID) |
BOOLEAN | PsGetVersion (PULONG MajorVersion OPTIONAL, PULONG MinorVersion OPTIONAL, PULONG BuildNumber OPTIONAL, PUNICODE_STRING CSDVersion OPTIONAL) |
Variables | |
ULONG | PsPrioritySeperation |
ULONG | PsRawPrioritySeparation |
LIST_ENTRY | PsActiveProcessHead |
UNICODE_STRING | PsNtDllPathName |
PVOID | PsSystemDllBase |
FAST_MUTEX | PsProcessSecurityLock |
PEPROCESS | PsInitialSystemProcess |
PVOID | PsNtosImageBase |
PVOID | PsHalImageBase |
LIST_ENTRY | PsLoadedModuleList |
ERESOURCE | PsLoadedModuleResource |
LCID | PsDefaultSystemLocaleId |
LCID | PsDefaultThreadLocaleId |
LANGID | PsDefaultUILanguageId |
LANGID | PsInstallUILanguageId |
PEPROCESS | PsIdleProcess |
BOOLEAN | PsReaperActive |
LIST_ENTRY | PsReaperListHead |
WORK_QUEUE_ITEM | PsReaperWorkItem |
BOOLEAN | PsImageNotifyEnabled |
|
Definition at line 769 of file ps.h. Referenced by DbgkCreateThread(), MiLoadSystemImage(), and MiMapViewOfImageSection(). |
|
Value:
Definition at line 639 of file ps.h. Referenced by ExpRaiseHardError(), IoIsSystemThread(), NtGetContextThread(), NtQueueApcThread(), NtReplyWaitReceivePort(), NtReplyWaitReceivePortEx(), NtSetContextThread(), NtSetInformationProcess(), NtSetInformationThread(), NtTerminateProcess(), NtTerminateThread(), PsAssignImpersonationToken(), PspExitNormalApc(), PspExitThread(), PspTerminateProcess(), PsTerminateSystemThread(), QueuePowerRequest(), UserCommitDesktopMemory(), UserGetDesktopDC(), VerifierExAcquireFastMutexUnsafe(), VerifierExAcquireResourceExclusive(), VerifierExReleaseFastMutex(), VerifierExReleaseFastMutexUnsafe(), VerifierExReleaseResource(), and xxxSwitchDesktop(). |
|
Definition at line 41 of file ps.h. Referenced by MmSetMemoryPriorityProcess(), NtSetInformationProcess(), PsChangeQuantumTable(), and PsSetProcessPriorityByClass(). |
|
Definition at line 43 of file ps.h. Referenced by KiUnwaitThread(), MiCheckProcessTrimCriteria(), MiDetermineWsTrimAmount(), MiDoReplacement(), MiRearrangeWorkingSetExpansionList(), NtSetInformationProcess(), PspApplyJobLimitsToProcess(), and PsSetProcessPriorityByClass(). |
|
|
|
Definition at line 151 of file ps.h. Referenced by PsEnforceExecutionTimeLimits(). |
|
Definition at line 341 of file ps.h. Referenced by ExpCopyThreadInfo(), NtQueryInformationThread(), and PspExitThread(). |
|
Definition at line 315 of file ps.h. Referenced by NtQueryInformationJobObject(), NtSetInformationJobObject(), PsEnforceExecutionTimeLimits(), PspAddProcessToJob(), and PspFoldProcessAccountingIntoJob(). |
|
Definition at line 317 of file ps.h. Referenced by PspExitProcess(). |
|
Definition at line 319 of file ps.h. Referenced by NtSetInformationJobObject(), PsChangeJobMemoryUsage(), PsEnforceExecutionTimeLimits(), PspAddProcessToJob(), PspExitProcess(), PspFoldProcessAccountingIntoJob(), and PsReportProcessMemoryLimitViolation(). |
|
Definition at line 316 of file ps.h. Referenced by NtSetInformationJobObject(), PsChangeJobMemoryUsage(), PspAddProcessToJob(), PspCreateThread(), and PsReportProcessMemoryLimitViolation(). |
|
Definition at line 314 of file ps.h. Referenced by NtQueryInformationJobObject(), NtSetInformationJobObject(), PsEnforceExecutionTimeLimits(), PspAddProcessToJob(), PspApplyJobLimitsToProcessSet(), PspCreateThread(), PspExitProcess(), PspExitProcessFromJob(), PspRemoveProcessFromJob(), and PspTerminateAllProcessesInJob(). |
|
Definition at line 318 of file ps.h. Referenced by MiInsertVad(), MiRemoveVad(), MiReturnPageTablePageCommitment(), MiSetProtectionOnSection(), MmAssignProcessToJob(), MmCleanProcessAddressSpace(), NtAllocateVirtualMemory(), and NtFreeVirtualMemory(). |
|
Definition at line 148 of file ps.h. Referenced by PsChangeJobMemoryUsage(), PspAddProcessToJob(), PspCreateThread(), PspExitProcessFromJob(), PspRemoveProcessFromJob(), PspTerminateAllProcessesInJob(), and PsReportProcessMemoryLimitViolation(). |
|
Definition at line 154 of file ps.h. Referenced by NtSetInformationJobObject(), PsEnforceExecutionTimeLimits(), PspAddProcessToJob(), PspExitProcess(), and PspFoldProcessAccountingIntoJob(). |
|
Definition at line 343 of file ps.h. Referenced by PspCreateThread(). |
|
Definition at line 133 of file ps.h. Referenced by PsSetProcessPriorityByClass(). |
|
|
|
Value: Definition at line 840 of file ps.h. Referenced by PsImpersonateClient(), PsOpenTokenOfThread(), SepCreateClientSecurity(), SepOpenTokenOfThread(), and SeReleaseSubjectContext(). |
|
Definition at line 810 of file ps.h. Referenced by NtOpenThreadToken(), NtSecureConnectPort(), NtSetInformationProcess(), PspCreateProcess(), PspCreateThread(), PspSetPrimaryToken(), SeIsChildToken(), SeIsChildTokenByPointer(), SepCreateClientSecurity(), SeReleaseSubjectContext(), and SeSubProcessToken(). |
|
Definition at line 661 of file ps.h. Referenced by NtAssignProcessToJobObject(), PsDisableImpersonation(), PsImpersonateClient(), PspAssignPrimaryToken(), PsReferenceEffectiveToken(), PsReferenceImpersonationToken(), PsReferencePrimaryToken(), and PsRevertToSelf(). |
|
|
|
Definition at line 875 of file ps.h. Referenced by NtClose(), PtiFromThreadId(), VdmpIsThreadTerminating(), VdmpQueueIntApcRoutine(), and xxxSleepTask(). |
|
Definition at line 654 of file ps.h. Referenced by NtAssignProcessToJobObject(), PsDisableImpersonation(), PsImpersonateClient(), PspAssignPrimaryToken(), PsReferenceEffectiveToken(), PsReferenceImpersonationToken(), PsReferencePrimaryToken(), and PsRevertToSelf(). |
|
Definition at line 29 of file ps.h. Referenced by PsLookupProcessByProcessId(), PsLookupProcessThreadByCid(), PsLookupThreadByThreadId(), PspCreateThread(), and PspExitThread(). |
|
Definition at line 814 of file ps.h. Referenced by NtOpenObjectAuditAlarm(), SeAuditHandleDuplication(), SeAuditProcessExit(), SeCaptureSubjectContext(), SepAccessCheckAndAuditAlarm(), SepAdtCloseObjectAuditAlarm(), SepAdtDeleteObjectAuditAlarm(), and SepAdtHandleAuditAlarm(). |
|
|
Referenced by NtCreateJobObject(). |
|
Referenced by PspCreateProcess(). |
|
|
|
Referenced by PspCreateThread(). |
|
Referenced by DbgkCreateThread(). |
|
Referenced by PspCreateProcess(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
Referenced by MiChargePageFileQuota(). |
|
|
|
Referenced by PsCallImageNotifyRoutines(). |
|
|
|
|
|
Referenced by UserJobCallout(). |
|
|
|
Referenced by QueuePowerRequest(). |
|
|
|
Referenced by UserPowerStateCallout(). |
|
|
|
|
|
|
|
Definition at line 773 of file ps.h. Referenced by PsSetLoadImageNotifyRoutine(). |
|
Definition at line 85 of file ps.h. Referenced by MiLockCode(). |
|
|
|
|
|
|
|
Referenced by PspCaptureTokenFilter(). |
|
Referenced by PsLockProcess(). |
|
Referenced by xxxUserPowerEventCalloutWorker(). |
|
|
|
Referenced by UserJobCallout(). |
|
|
|
Referenced by MmInitializeProcessAddressSpace(). |
|
|
|
|
|
|
|
Referenced by MmInitializeProcessAddressSpace(). |
|
Definition at line 1021 of file ps.h.
|
|
Definition at line 1092 of file ps.h.
|
|
Definition at line 1142 of file ps.h.
|
|
Definition at line 1060 of file ps.h.
|
|
Definition at line 1080 of file ps.h.
|
|
Definition at line 1483 of file ps/security.c. References FALSE, Filter, IS_SYSTEM_THREAD, KeAttachProcess(), KeDetachProcess(), KPROCESSOR_MODE, NT_SUCCESS, NTSTATUS(), NULL, ObDereferenceObject, ObReferenceObjectByHandle(), _EPROCESS::Pcb, PsGetCurrentProcess, PsImpersonateClient(), SeFastFilterToken(), SeTokenImpersonationLevel(), SeTokenIsAdmin(), SeTokenIsRestricted(), SeTokenObjectType, SeTokenType(), Status, THREAD_TO_PROCESS, Token, and TRUE. Referenced by NtSetInformationThread().
|
|
Definition at line 2396 of file ps/create.c. References NULL, PAGED_CODE, PIMAGE_INFO, PsImageNotifyEnabled, PSP_MAX_LOAD_IMAGE_NOTIFY, and PspLoadImageNotifyRoutine. Referenced by DbgkCreateThread(), MiLoadSystemImage(), and MiMapViewOfImageSection().
|
|
Definition at line 2823 of file psjob.c. References _EPROCESS::CommitCharge, _EJOB::CompletionKey, _EJOB::CompletionPort, _EJOB::CurrentJobMemoryUsed, ExAcquireFastMutexUnsafe(), ExReleaseFastMutexUnsafe(), FALSE, IoSetIoCompletion(), _EPROCESS::Job, _EJOB::JobMemoryLimit, _EPROCESS::JobStatus, KeEnterCriticalRegion, KeLeaveCriticalRegion, _EJOB::LimitFlags, _EJOB::MemoryLimitsLock, _EJOB::PeakJobMemoryUsed, _EJOB::PeakProcessMemoryUsed, PS_JOB_STATUS_LAST_REPORT_MEMORY, PS_JOB_STATUS_NEW_PROCESS_REPORTED, PS_SET_BITS, PsGetCurrentProcess, TRUE, and _EPROCESS::UniqueProcessId. Referenced by MiInsertVad(), MiRemoveVad(), MiReturnPageTablePageCommitment(), MiSetProtectionOnSection(), MmAssignProcessToJob(), MmCleanProcessAddressSpace(), NtAllocateVirtualMemory(), and NtFreeVirtualMemory().
|
|
Definition at line 878 of file psinit.c. References FALSE, _EPROCESS::Job, MEMORY_PRIORITY_BACKGROUND, _MMSUPPORT::MemoryPriority, MmIsThisAnNtAsSystem(), _EPROCESS::Pcb, _EPROCESS::PriorityClass, PsActiveProcessHead, PspActiveProcessMutex, PspFixedQuantums, PspForegroundQuantum, PspJobSchedulingClasses, PsPrioritySeperation, PspUseJobSchedulingClasses, PspVariableQuantums, _EJOB::SchedulingClass, THREAD_QUANTUM, _KPROCESS::ThreadQuantum, TRUE, and _EPROCESS::Vm. Referenced by NtSetSystemInformation(), and PspInitPhase0().
|
|
|
|
|
|
|
|
|
|
Definition at line 888 of file ps/security.c. References ASSERT, _PS_IMPERSONATION_INFORMATION::CopyOnOpen, _PS_IMPERSONATION_INFORMATION::EffectiveOnly, FALSE, _PS_IMPERSONATION_INFORMATION::ImpersonationLevel, NULL, PsFreeProcessSecurityFields, PsLockProcessSecurityFields, ThreadObject, _PS_IMPERSONATION_INFORMATION::Token, and TRUE. Referenced by NtOpenThreadToken(), PsOpenTokenOfThread(), and SepOpenTokenOfThread().
|
|
Definition at line 2396 of file psjob.c. References _EJOB::ActiveProcesses, _EJOB::CompletionKey, _EJOB::CompletionPort, _EJOB::EndOfJobTimeAction, _EJOB::Event, ExAcquireResourceExclusive, ExReleaseResource, FALSE, IoSetIoCompletion(), _EJOB::JobLock, _EPROCESS::JobStatus, KeMaximumIncrement, KeSetEvent(), _EJOB::LimitFlags, NT_SUCCESS, NTSTATUS(), NULL, ObDereferenceObject, ObGetObjectPointerCount(), ObReferenceObject, _EPROCESS::Pcb, _EJOB::PerJobUserTimeLimit, _EJOB::PerProcessUserTimeLimit, _EJOB::ProcessListHead, PS_CLEAR_BITS, PS_JOB_STATUS_ACCOUNTING_FOLDED, PS_JOB_STATUS_LAST_REPORT_MEMORY, PS_JOB_STATUS_NOT_REALLY_ACTIVE, PS_SET_CLEAR_BITS, PsLockReturnTimeout, PspFoldProcessAccountingIntoJob(), PspJobList, PspJobListLock, PspTerminateAllProcessesInJob(), PspTerminateProcess(), _EJOB::ThisPeriodTotalUserTime, _EJOB::TotalTerminatedProcesses, _EPROCESS::UniqueProcessId, and _KPROCESS::UserTime. Referenced by KeBalanceSetManager().
|
|
Definition at line 3855 of file psquery.c. References ExGlobalAtomTableCallout, KeGdiFlushUserBatch, PAGED_CODE, PGDI_BATCHFLUSH_ROUTINE, PopEventCallout, PopStateCallout, PspW32JobCallout, PspW32ProcessCallout, and PspW32ThreadCallout.
|
|
Definition at line 603 of file psdelete.c. References ExFreePool(), NTSTATUS(), PAGED_CODE, and PspExitThread(). Referenced by KiInsertQueueApc(), KiSuspendThread(), PspExitNormalApc(), and PspTerminateThreadByPointer().
|
|
|
|
Definition at line 2306 of file ps/create.c. References PsGetCurrentThread. Referenced by SeAuditHandleCreation().
|
|
Definition at line 2312 of file ps/create.c. References PsGetCurrentThread.
|
|
Definition at line 1539 of file psdelete.c. References PAGED_CODE, and PsGetCurrentProcess.
|
|
Definition at line 2318 of file ps/create.c. References CmCSDVersionString, NtBuildNumber, NtMajorVersion, and NtMinorVersion.
|
|
Definition at line 650 of file ps/security.c. References ASSERT, _PS_IMPERSONATION_INFORMATION::CopyOnOpen, _PS_IMPERSONATION_INFORMATION::EffectiveOnly, ExAllocatePoolWithTag, FALSE, Filter, _PS_IMPERSONATION_INFORMATION::ImpersonationLevel, KernelMode, NT_SUCCESS, NTSTATUS(), NULL, ObReferenceObject, PagedPool, PsDereferenceImpersonationToken, PsFreeProcessSecurityFields, PsLockProcessSecurityFields, SeFastFilterToken(), SeTokenIsAdmin(), SeTokenIsRestricted(), Status, ThreadObject, Token, _PS_IMPERSONATION_INFORMATION::Token, and TRUE. Referenced by NtImpersonateAnonymousToken(), NtOpenThreadToken(), PsAssignImpersonationToken(), PsRestoreImpersonation(), and SeImpersonateClientEx().
|
|
Definition at line 138 of file psinit.c. References InitializationPhase, KeBugCheck(), PspInitPhase0(), and PspInitPhase1().
|
|
Definition at line 525 of file psinit.c. References DbgPrint, _SYSTEM_DLL::DllBase, File, KeBugCheckEx(), KernelMode, L, MmCheckSystemImage(), MmSectionObjectType, NT_SUCCESS, NtRaiseHardError(), NTSTATUS(), NULL, ObjectAttributes, ObReferenceObjectByHandle(), PsGetCurrentProcess, PsNtDllPathName, PspMapSystemDll(), PspSystemDll, PsSystemDllBase, PsSystemDllDllBase, RtlAllocateStringRoutine, RtlCopyUnicodeString(), RtlInitUnicodeString(), _SYSTEM_DLL::Section, and ZwOpenFile(). Referenced by IoInitSystem().
|
|
Definition at line 1966 of file ps/create.c. References ExAcquireFastMutexUnsafe(), Executive, ExReleaseFastMutexUnsafe(), FALSE, _KTHREAD::FreezeCount, KeClearEvent, KeEnterCriticalRegion, KeGetCurrentThread, KeLeaveCriticalRegion, KeReadStateProcess(), _KTHREAD::KernelApcDisable, KernelMode, KeSetEvent(), KeWaitForSingleObject(), NTSTATUS(), NULL, PAGED_CODE, PsGetCurrentThread, PsLockIAmExiting, PSLOCKPROCESSMODE, PsLockReturnTimeout, PsLockWaitForever, PspProcessLockMutex, PsUnlockProcess(), Status, _ETHREAD::Tcb, TRUE, and UserMode. Referenced by DbgkCreateThread(), DbgkpResumeProcess(), DbgkpSuspendProcess(), NtAssignProcessToJobObject(), NtSetInformationProcess(), NtSetInformationThread(), NtTerminateProcess(), NtTerminateThread(), PspApplyJobLimitsToProcess(), PspCreateThread(), PspExitThread(), and PspTerminateProcess().
|
|
Definition at line 94 of file pscid.c. References ExMapHandleToPointer(), ExUnlockHandleTableEntry(), _EPROCESS::GrantedAccess, _KPROCESS::Header, NTSTATUS(), NULL, _HANDLE_TABLE_ENTRY::Object, ObReferenceObject, _EPROCESS::Pcb, ProcessObject, PSP_INVALID_ID, PspCidTable, Status, and _DISPATCHER_HEADER::Type. Referenced by LpcpGetCreatorName(), and NtOpenProcess().
|
|
Definition at line 27 of file pscid.c. References _ETHREAD::Cid, ExMapHandleToPointer(), ExUnlockHandleTableEntry(), _ETHREAD::GrantedAccess, _KTHREAD::Header, NTSTATUS(), NULL, _HANDLE_TABLE_ENTRY::Object, ObReferenceObject, PSP_INVALID_ID, PspCidTable, Status, _ETHREAD::Tcb, THREAD_TO_PROCESS, ThreadObject, and _DISPATCHER_HEADER::Type. Referenced by LpcpCopyRequestData(), LpcRequestWaitReplyPort(), NtAcceptConnectPort(), NtImpersonateClientOfPort(), NtOpenProcess(), NtOpenThread(), NtReplyPort(), NtReplyWaitReceivePort(), NtReplyWaitReceivePortEx(), NtReplyWaitReplyPort(), NtRequestWaitReplyPort(), and VdmpIsThreadTerminating().
|
|
Definition at line 146 of file pscid.c. References ExMapHandleToPointer(), ExUnlockHandleTableEntry(), _ETHREAD::GrantedAccess, _KTHREAD::Header, NTSTATUS(), NULL, _HANDLE_TABLE_ENTRY::Object, ObReferenceObject, PSP_INVALID_ID, PspCidTable, Status, _ETHREAD::Tcb, ThreadObject, and _DISPATCHER_HEADER::Type. Referenced by NtOpenThread().
|
|
|
|
Definition at line 492 of file ps/security.c. References KPROCESSOR_MODE, NT_SUCCESS, NTSTATUS(), NULL, ObDereferenceObject, ObReferenceObjectByHandle(), PsProcessType, PsReferencePrimaryToken(), and Status. Referenced by NtOpenProcessToken().
|
|
Definition at line 326 of file ps/security.c. References FALSE, KPROCESSOR_MODE, NT_SUCCESS, NTSTATUS(), NULL, ObDereferenceObject, ObReferenceObjectByHandle(), PsDereferenceImpersonationToken, PsDisableImpersonation(), PsGetCurrentThread, PsReferenceImpersonationToken(), PsRestoreImpersonation(), PsThreadType, Status, ThreadHandle, and Token.
|
|
|
|
|
|
Definition at line 208 of file ps/security.c. References ASSERT, FALSE, ObReferenceObject, PsFreeProcessSecurityFields, PsLockProcessSecurityFields, THREAD_TO_PROCESS, ThreadObject, and Token. Referenced by SeCreateClientSecurity().
|
|
Definition at line 97 of file ps/security.c. References ASSERT, NULL, ObReferenceObject, PsFreeProcessSecurityFields, PsLockProcessSecurityFields, ThreadObject, and Token. Referenced by GetProcessLuid(), IsRestricted(), PsOpenTokenOfThread(), SeCaptureSubjectContext(), and SepOpenTokenOfThread().
|
|
Definition at line 28 of file ps/security.c. References ASSERT, ObReferenceObject, ProcessObject, PsFreeProcessSecurityFields, PsLockProcessSecurityFields, and Token. Referenced by CheckAllowForeground(), GetProcessLuid(), IsRestricted(), NtOpenThreadToken(), NtSecureConnectPort(), NtSetInformationProcess(), PsOpenTokenOfProcess(), PspCreateProcess(), PspCreateThread(), PspSetPrimaryToken(), SeCaptureSubjectContext(), SeIsChildToken(), SeIsChildTokenByPointer(), and SeSubProcessToken().
|
|
|
Definition at line 990 of file ps/security.c. References ObDereferenceObject, and PsImpersonateClient(). Referenced by NtOpenThreadToken(), PsOpenTokenOfThread(), and SepOpenTokenOfThread().
|
|
|
|
|
|
|
|
Definition at line 1691 of file ps/create.c. References NULL, PSP_MAX_CREATE_PROCESS_NOTIFY, PspCreateProcessNotifyRoutine, and PspCreateProcessNotifyRoutineCount.
|
|
Definition at line 1755 of file ps/create.c. References NTSTATUS(), NULL, PSP_MAX_CREATE_THREAD_NOTIFY, PspCreateThreadNotifyRoutine, PspCreateThreadNotifyRoutineCount, and Status.
|
|
Definition at line 45 of file psdelete.c. References PAGED_CODE, and PspLegoNotifyRoutine.
|
|
Definition at line 2344 of file ps/create.c. References NTSTATUS(), NULL, PAGED_CODE, PLOAD_IMAGE_NOTIFY_ROUTINE, PsImageNotifyEnabled, PSP_MAX_LOAD_IMAGE_NOTIFY, PspLoadImageNotifyRoutine, PspLoadImageNotifyRoutineCount, Status, and TRUE.
|
|
Definition at line 3916 of file psquery.c. References KeSetPriorityProcess(), MEMORY_PRIORITY_BACKGROUND, MEMORY_PRIORITY_FOREGROUND, MmSetMemoryPriorityProcess(), PAGED_CODE, PS_WS_TRIM_BACKGROUND_ONLY_APP, PspForegroundQuantum, PspJobSchedulingClasses, PspPriorityTable, PsPrioritySeperation, PsProcessPriorityForeground, PsProcessPrioritySpinning, PspUseJobSchedulingClasses, and THREAD_QUANTUM. Referenced by NtSetInformationProcess(), PspApplyJobLimitsToProcess(), PspCreateProcess(), and SetForegroundPriorityProcess().
|
|
Definition at line 546 of file psdelete.c. References _ETHREAD::HasTerminated, IS_SYSTEM_THREAD, PsGetCurrentThread, PspExitThread(), and TRUE. Referenced by SmbTraceThreadEntry(), and xxxDesktopThread().
|
|
Definition at line 2250 of file ps/create.c. References ExAcquireFastMutexUnsafe(), ExReleaseFastMutexUnsafe(), FALSE, KeLeaveCriticalRegion, KeSetEvent(), NULL, PAGED_CODE, and PspProcessLockMutex. Referenced by DbgkCreateThread(), DbgkpResumeProcess(), DbgkpSuspendProcess(), NtAssignProcessToJobObject(), NtSetInformationProcess(), NtSetInformationThread(), NtTerminateProcess(), NtTerminateThread(), PsLockProcess(), PspApplyJobLimitsToProcess(), PspCreateThread(), PspExitThread(), and PspTerminateProcess().
|
|
Definition at line 575 of file ps.h. Referenced by ExpGetProcessInformation(), IoWriteCrashDump(), MiCheckForCrashDump(), PsChangeQuantumTable(), PspCreateProcess(), and PspInitPhase0(). |
|
Definition at line 584 of file ps.h. Referenced by CmGetSystemControlValues(), CmpCreatePerfKeys(), IopProcessNewDeviceNode(), LdrpSearchResourceSection_U(), NtQueryDefaultLocale(), and NtSetDefaultLocale(). |
|
Definition at line 585 of file ps.h. Referenced by CmGetSystemControlValues(), NtQueryDefaultLocale(), NtSetDefaultLocale(), and PspUserThreadStartup(). |
|
Definition at line 586 of file ps.h. Referenced by CmGetSystemControlValues(). |
|
|
|
Definition at line 588 of file ps.h. Referenced by ExpGetProcessInformation(), NtQuerySystemInformation(), and PspInitPhase0(). |
|
Definition at line 880 of file ps.h. Referenced by DbgkCreateThread(), MiLoadSystemImage(), MiMapViewOfImageSection(), PsCallImageNotifyRoutines(), and PsSetLoadImageNotifyRoutine(). |
|
|
Definition at line 587 of file ps.h. Referenced by CmGetSystemControlValues(), LdrpSearchResourceSection_U(), NtQueryDefaultUILanguage(), and NtQueryInstallUILanguage(). |
|
|
|
Definition at line 576 of file ps.h. Referenced by DbgkCreateThread(), and PsLocateSystemDll(). |
|
Definition at line 580 of file ps.h. Referenced by KdpGetVersion(), KiInitializeKernel(), and MiInitializeLoadedModuleList(). |
|
Definition at line 573 of file ps.h. Referenced by KiUnwaitThread(), PsChangeQuantumTable(), and PsSetProcessPriorityByClass(). |
|
Definition at line 578 of file ps.h. Referenced by PspInitPhase0(). |
|
Definition at line 574 of file ps.h. Referenced by PspInitPhase0(). |
|
Definition at line 589 of file ps.h. Referenced by KeTerminateThread(), and PspReaper(). |
|
Definition at line 590 of file ps.h. Referenced by KeTerminateThread(), PspInitPhase0(), and PspReaper(). |
|
Definition at line 591 of file ps.h. Referenced by KeTerminateThread(), and PspInitPhase0(). |
|
Definition at line 577 of file ps.h. Referenced by DbgkCreateThread(), and PsLocateSystemDll(). |