ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

psfuncs.h
Go to the documentation of this file.
00001 /******************************************************************************
00002  *                          Process Manager Functions                         *
00003  ******************************************************************************/
00004 $if (_WDMDDK_)
00005 
00006 NTKERNELAPI
00007 NTSTATUS
00008 NTAPI
00009 PsWrapApcWow64Thread(
00010   _Inout_ PVOID *ApcContext,
00011   _Inout_ PVOID *ApcRoutine);
00012 
00013 /*
00014  * PEPROCESS
00015  * PsGetCurrentProcess(VOID)
00016  */
00017 #define PsGetCurrentProcess IoGetCurrentProcess
00018 
00019 #if !defined(_PSGETCURRENTTHREAD_)
00020 #define _PSGETCURRENTTHREAD_
00021 _IRQL_requires_max_(DISPATCH_LEVEL)
00022 FORCEINLINE
00023 PETHREAD
00024 NTAPI
00025 PsGetCurrentThread(VOID)
00026 {
00027   return (PETHREAD)KeGetCurrentThread();
00028 }
00029 #endif /* !_PSGETCURRENTTHREAD_ */
00030 
00031 $endif (_WDMDDK_)
00032 $if (_NTDDK_)
00033 
00034 __kernel_entry
00035 NTSYSCALLAPI
00036 NTSTATUS
00037 NTAPI
00038 NtOpenProcess(
00039   _Out_ PHANDLE ProcessHandle,
00040   _In_ ACCESS_MASK DesiredAccess,
00041   _In_ POBJECT_ATTRIBUTES ObjectAttributes,
00042   _In_opt_ PCLIENT_ID ClientId);
00043 
00044 NTSYSCALLAPI
00045 NTSTATUS
00046 NTAPI
00047 NtQueryInformationProcess(
00048   IN HANDLE ProcessHandle,
00049   IN PROCESSINFOCLASS ProcessInformationClass,
00050   OUT PVOID ProcessInformation OPTIONAL,
00051   IN ULONG ProcessInformationLength,
00052   OUT PULONG ReturnLength OPTIONAL);
00053 $endif (_NTDDK_)
00054 $if (_NTIFS_)
00055 
00056 _Must_inspect_result_
00057 _IRQL_requires_max_(APC_LEVEL)
00058 NTKERNELAPI
00059 NTSTATUS
00060 NTAPI
00061 PsLookupProcessByProcessId(
00062   _In_ HANDLE ProcessId,
00063   _Outptr_ PEPROCESS *Process);
00064 
00065 _Must_inspect_result_
00066 _IRQL_requires_max_(APC_LEVEL)
00067 NTKERNELAPI
00068 NTSTATUS
00069 NTAPI
00070 PsLookupThreadByThreadId(
00071   _In_ HANDLE UniqueThreadId,
00072   _Outptr_ PETHREAD *Thread);
00073 $endif (_NTIFS_)
00074 
00075 #if (NTDDI_VERSION >= NTDDI_WIN2K)
00076 
00077 $if (_WDMDDK_)
00078 _IRQL_requires_max_(APC_LEVEL)
00079 _Post_satisfies_(return <= 0)
00080 _Must_inspect_result_
00081 NTKERNELAPI
00082 NTSTATUS
00083 NTAPI
00084 PsCreateSystemThread(
00085   _Out_ PHANDLE ThreadHandle,
00086   _In_ ULONG DesiredAccess,
00087   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
00088   _In_opt_ HANDLE ProcessHandle,
00089   _Out_opt_ PCLIENT_ID ClientId,
00090   _In_ PKSTART_ROUTINE StartRoutine,
00091   _In_opt_ _When_(return==0, __drv_aliasesMem) PVOID StartContext);
00092 
00093 _IRQL_requires_max_(PASSIVE_LEVEL)
00094 NTKERNELAPI
00095 NTSTATUS
00096 NTAPI
00097 PsTerminateSystemThread(
00098   _In_ NTSTATUS ExitStatus);
00099 
00100 $endif (_WDMDDK_)
00101 $if (_NTDDK_)
00102 
00103 _IRQL_requires_max_(PASSIVE_LEVEL)
00104 NTKERNELAPI
00105 NTSTATUS
00106 NTAPI
00107 PsSetCreateProcessNotifyRoutine(
00108   _In_ PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine,
00109   _In_ BOOLEAN Remove);
00110 
00111 _IRQL_requires_max_(PASSIVE_LEVEL)
00112 NTKERNELAPI
00113 NTSTATUS
00114 NTAPI
00115 PsSetCreateThreadNotifyRoutine(
00116   _In_ PCREATE_THREAD_NOTIFY_ROUTINE NotifyRoutine);
00117 
00118 _IRQL_requires_max_(PASSIVE_LEVEL)
00119 NTKERNELAPI
00120 NTSTATUS
00121 NTAPI
00122 PsSetLoadImageNotifyRoutine(
00123   _In_ PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine);
00124 
00125 NTKERNELAPI
00126 HANDLE
00127 NTAPI
00128 PsGetCurrentProcessId(VOID);
00129 
00130 _IRQL_requires_max_(DISPATCH_LEVEL)
00131 NTKERNELAPI
00132 HANDLE
00133 NTAPI
00134 PsGetCurrentThreadId(VOID);
00135 
00136 NTKERNELAPI
00137 BOOLEAN
00138 NTAPI
00139 PsGetVersion(
00140   OUT PULONG MajorVersion OPTIONAL,
00141   OUT PULONG MinorVersion OPTIONAL,
00142   OUT PULONG BuildNumber OPTIONAL,
00143   OUT PUNICODE_STRING CSDVersion OPTIONAL);
00144 $endif (_NTDDK_)
00145 $if (_NTIFS_)
00146 
00147 _IRQL_requires_max_(APC_LEVEL)
00148 NTKERNELAPI
00149 PACCESS_TOKEN
00150 NTAPI
00151 PsReferenceImpersonationToken(
00152   _Inout_ PETHREAD Thread,
00153   _Out_ PBOOLEAN CopyOnOpen,
00154   _Out_ PBOOLEAN EffectiveOnly,
00155   _Out_ PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel);
00156 
00157 _IRQL_requires_max_(APC_LEVEL)
00158 NTKERNELAPI
00159 LARGE_INTEGER
00160 NTAPI
00161 PsGetProcessExitTime(VOID);
00162 
00163 _IRQL_requires_max_(DISPATCH_LEVEL)
00164 NTKERNELAPI
00165 BOOLEAN
00166 NTAPI
00167 PsIsThreadTerminating(
00168   _In_ PETHREAD Thread);
00169 
00170 _Must_inspect_result_
00171 _IRQL_requires_max_(PASSIVE_LEVEL)
00172 NTKERNELAPI
00173 NTSTATUS
00174 NTAPI
00175 PsImpersonateClient(
00176   _Inout_ PETHREAD Thread,
00177   _In_opt_ PACCESS_TOKEN Token,
00178   _In_ BOOLEAN CopyOnOpen,
00179   _In_ BOOLEAN EffectiveOnly,
00180   _In_ SECURITY_IMPERSONATION_LEVEL ImpersonationLevel);
00181 
00182 _IRQL_requires_max_(PASSIVE_LEVEL)
00183 NTKERNELAPI
00184 BOOLEAN
00185 NTAPI
00186 PsDisableImpersonation(
00187   _Inout_ PETHREAD Thread,
00188   _Inout_ PSE_IMPERSONATION_STATE ImpersonationState);
00189 
00190 _IRQL_requires_max_(PASSIVE_LEVEL)
00191 NTKERNELAPI
00192 VOID
00193 NTAPI
00194 PsRestoreImpersonation(
00195   _Inout_ PETHREAD Thread,
00196   _In_ PSE_IMPERSONATION_STATE ImpersonationState);
00197 
00198 _IRQL_requires_max_(PASSIVE_LEVEL)
00199 NTKERNELAPI
00200 VOID
00201 NTAPI
00202 PsRevertToSelf(VOID);
00203 
00204 _IRQL_requires_max_(APC_LEVEL)
00205 NTKERNELAPI
00206 VOID
00207 NTAPI
00208 PsChargePoolQuota(
00209   _In_ PEPROCESS Process,
00210   _In_ POOL_TYPE PoolType,
00211   _In_ ULONG_PTR Amount);
00212 
00213 _IRQL_requires_max_(APC_LEVEL)
00214 NTKERNELAPI
00215 VOID
00216 NTAPI
00217 PsReturnPoolQuota(
00218   _In_ PEPROCESS Process,
00219   _In_ POOL_TYPE PoolType,
00220   _In_ ULONG_PTR Amount);
00221 
00222 _IRQL_requires_max_(PASSIVE_LEVEL)
00223 NTKERNELAPI
00224 NTSTATUS
00225 NTAPI
00226 PsAssignImpersonationToken(
00227   _In_ PETHREAD Thread,
00228   _In_opt_ HANDLE Token);
00229 
00230 _IRQL_requires_max_(PASSIVE_LEVEL)
00231 NTKERNELAPI
00232 HANDLE
00233 NTAPI
00234 PsReferencePrimaryToken(
00235   _Inout_ PEPROCESS Process);
00236 $endif (_NTIFS_)
00237 #endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
00238 $if (_NTDDK_ || _NTIFS_)
00239 #if (NTDDI_VERSION >= NTDDI_WINXP)
00240 $endif (_NTDDK_ || _NTIFS_)
00241 
00242 $if (_NTDDK_)
00243 _IRQL_requires_max_(DISPATCH_LEVEL)
00244 NTKERNELAPI
00245 HANDLE
00246 NTAPI
00247 PsGetProcessId(
00248   _In_ PEPROCESS Process);
00249 
00250 _IRQL_requires_max_(DISPATCH_LEVEL)
00251 NTKERNELAPI
00252 HANDLE
00253 NTAPI
00254 PsGetThreadId(
00255   _In_ PETHREAD Thread);
00256 
00257 NTKERNELAPI
00258 NTSTATUS
00259 NTAPI
00260 PsRemoveCreateThreadNotifyRoutine(
00261   _In_ PCREATE_THREAD_NOTIFY_ROUTINE NotifyRoutine);
00262 
00263 _IRQL_requires_max_(PASSIVE_LEVEL)
00264 NTKERNELAPI
00265 NTSTATUS
00266 NTAPI
00267 PsRemoveLoadImageNotifyRoutine(
00268   _In_ PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine);
00269 
00270 _IRQL_requires_max_(DISPATCH_LEVEL)
00271 NTKERNELAPI
00272 LONGLONG
00273 NTAPI
00274 PsGetProcessCreateTimeQuadPart(
00275   _In_ PEPROCESS Process);
00276 $endif (_NTDDK_)
00277 $if (_NTIFS_)
00278 
00279 _IRQL_requires_max_(PASSIVE_LEVEL)
00280 NTKERNELAPI
00281 VOID
00282 NTAPI
00283 PsDereferencePrimaryToken(
00284   _In_ PACCESS_TOKEN PrimaryToken);
00285 
00286 _IRQL_requires_max_(PASSIVE_LEVEL)
00287 NTKERNELAPI
00288 VOID
00289 NTAPI
00290 PsDereferenceImpersonationToken(
00291   _In_ PACCESS_TOKEN ImpersonationToken);
00292 
00293 _Must_inspect_result_
00294 _IRQL_requires_max_(APC_LEVEL)
00295 NTKERNELAPI
00296 NTSTATUS
00297 NTAPI
00298 PsChargeProcessPoolQuota(
00299   _In_ PEPROCESS Process,
00300   _In_ POOL_TYPE PoolType,
00301   _In_ ULONG_PTR Amount);
00302 
00303 NTKERNELAPI
00304 BOOLEAN
00305 NTAPI
00306 PsIsSystemThread(
00307   _In_ PETHREAD Thread);
00308 $endif (_NTIFS_)
00309 $if (_NTDDK_ || _NTIFS_)
00310 #endif /* (NTDDI_VERSION >= NTDDI_WINXP) */
00311 $endif (_NTDDK_ || _NTIFS_)
00312 
00313 $if (_NTDDK_)
00314 #if (NTDDI_VERSION >= NTDDI_WS03)
00315 NTKERNELAPI
00316 HANDLE
00317 NTAPI
00318 PsGetThreadProcessId(
00319   IN PETHREAD Thread);
00320 #endif /* (NTDDI_VERSION >= NTDDI_WS03) */
00321 
00322 #if (NTDDI_VERSION >= NTDDI_VISTA)
00323 
00324 NTKERNELAPI
00325 BOOLEAN
00326 NTAPI
00327 PsSetCurrentThreadPrefetching(
00328   IN BOOLEAN Prefetching);
00329 
00330 NTKERNELAPI
00331 BOOLEAN
00332 NTAPI
00333 PsIsCurrentThreadPrefetching(VOID);
00334 
00335 #endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
00336 
00337 #if (NTDDI_VERSION >= NTDDI_VISTASP1)
00338 NTKERNELAPI
00339 NTSTATUS
00340 NTAPI
00341 PsSetCreateProcessNotifyRoutineEx(
00342   IN PCREATE_PROCESS_NOTIFY_ROUTINE_EX NotifyRoutine,
00343   IN BOOLEAN Remove);
00344 #endif /* (NTDDI_VERSION >= NTDDI_VISTASP1) */
00345 $endif (_NTDDK_)

Generated on Sat May 26 2012 04:29:42 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.