Merge 13159:13510 from trunk
[reactos.git] / reactos / ntoskrnl / rtl / libsupp.c
1 /* $Id$
2 *
3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * FILE: ntoskrnl/rtl/libsupp.c
6 * PURPOSE: Rtl library support routines
7 *
8 * PROGRAMMERS: No programmer listed.
9 */
10
11 /* INCLUDES ******************************************************************/
12
13 #include <ntoskrnl.h>
14 #include <internal/ps.h>
15 #define NDEBUG
16 #include <internal/debug.h>
17
18 //FIXME: sort this out somehow. IAI: Sorted in new header branch
19 #define PRTL_CRITICAL_SECTION PVOID
20
21 /* FUNCTIONS *****************************************************************/
22
23 /*
24 * @implemented
25 */
26 VOID STDCALL
27 RtlAcquirePebLock(VOID)
28 {
29
30 }
31
32 /*
33 * @implemented
34 */
35 VOID STDCALL
36 RtlReleasePebLock(VOID)
37 {
38
39 }
40
41 PPEB
42 STDCALL
43 RtlpCurrentPeb(VOID)
44 {
45 return ((PEPROCESS)(KeGetCurrentThread()->ApcState.Process))->Peb;
46 }
47
48 NTSTATUS
49 STDCALL
50 RtlDeleteCriticalSection(
51 PRTL_CRITICAL_SECTION CriticalSection)
52 {
53 return STATUS_SUCCESS;
54 }
55
56 DWORD
57 STDCALL
58 RtlSetCriticalSectionSpinCount(
59 PRTL_CRITICAL_SECTION CriticalSection,
60 DWORD SpinCount
61 )
62 {
63 return 0;
64 }
65
66 NTSTATUS
67 STDCALL
68 RtlEnterCriticalSection(
69 PRTL_CRITICAL_SECTION CriticalSection)
70 {
71 ExAcquireFastMutex((PFAST_MUTEX) CriticalSection);
72 return STATUS_SUCCESS;
73 }
74
75 NTSTATUS
76 STDCALL
77 RtlInitializeCriticalSection(
78 PRTL_CRITICAL_SECTION CriticalSection)
79 {
80 ExInitializeFastMutex((PFAST_MUTEX)CriticalSection );
81 return STATUS_SUCCESS;
82 }
83
84 NTSTATUS
85 STDCALL
86 RtlLeaveCriticalSection(
87 PRTL_CRITICAL_SECTION CriticalSection)
88 {
89 ExReleaseFastMutex((PFAST_MUTEX) CriticalSection );
90 return STATUS_SUCCESS;
91 }
92
93 BOOLEAN
94 STDCALL
95 RtlTryEnterCriticalSection(
96 PRTL_CRITICAL_SECTION CriticalSection)
97 {
98 return ExTryToAcquireFastMutex((PFAST_MUTEX) CriticalSection );
99 }
100
101
102 NTSTATUS
103 STDCALL
104 RtlInitializeCriticalSectionAndSpinCount(
105 PRTL_CRITICAL_SECTION CriticalSection,
106 ULONG SpinCount)
107 {
108 ExInitializeFastMutex((PFAST_MUTEX)CriticalSection );
109 return STATUS_SUCCESS;
110 }
111
112 /* EOF */