Added ObGetObjectHandleCount().
[reactos.git] / reactos / ntoskrnl / io / process.c
1 /* $Id: process.c,v 1.11 2000/10/07 13:41:51 dwelch Exp $
2 *
3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * FILE: ntoskrnl/io/process.c
6 * PURPOSE: Process functions that, bizarrely, are in the iomgr
7 * PROGRAMMER: David Welch (welch@mcmail.com)
8 * UPDATE HISTORY:
9 * Created 22/05/98
10 */
11
12 /* INCLUDES *****************************************************************/
13
14 #include <ddk/ntddk.h>
15 #include <internal/ps.h>
16
17 #include <internal/debug.h>
18
19 /* FUNCTIONS *****************************************************************/
20
21 PVOID STDCALL
22 IoGetInitialStack (VOID)
23 {
24 UNIMPLEMENTED;
25 }
26
27
28 VOID STDCALL
29 IoGetStackLimits (PULONG LowLimit,
30 PULONG HighLimit)
31 {
32 *LowLimit = (ULONG)NtCurrentTeb ()->Tib.StackLimit;
33 *HighLimit = (ULONG)NtCurrentTeb ()->Tib.StackBase;
34 }
35
36
37 PEPROCESS STDCALL
38 IoThreadToProcess (IN PETHREAD Thread)
39 {
40 return (Thread->ThreadsProcess);
41 }
42
43
44 PEPROCESS STDCALL
45 IoGetRequestorProcess (IN PIRP Irp)
46 {
47 return (Irp->Tail.Overlay.Thread->ThreadsProcess);
48 }
49
50
51 /**********************************************************************
52 * NAME EXPORTED
53 * IoSetThreadHardErrorMode@4
54 *
55 * ARGUMENTS
56 * HardErrorEnabled
57 * TRUE : enable hard errors processing;
58 * FALSE: do NOT process hard errors.
59 *
60 * RETURN VALUE
61 * Previous value for the current thread's hard errors
62 * processing policy.
63 */
64 BOOLEAN STDCALL EXPORTED
65 IoSetThreadHardErrorMode (IN BOOLEAN HardErrorEnabled)
66 {
67 BOOLEAN PreviousHEM = NtCurrentTeb ()->HardErrorDisabled;
68
69 NtCurrentTeb ()->HardErrorDisabled = (
70 (TRUE == HardErrorEnabled)
71 ? FALSE
72 : TRUE
73 );
74 return (
75 (TRUE == PreviousHEM)
76 ? FALSE
77 : TRUE
78 );
79 }
80
81
82 /* EOF */