3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS system libraries
5 * FILE: lib/ntoskrnl/rtl/libsup.c
6 * PURPOSE: Rtl library support routines
11 /* INCLUDES ******************************************************************/
15 #include <internal/debug.h>
17 //FIXME: sort this out somehow
18 #define PCRITICAL_SECTION PVOID
19 #define LPCRITICAL_SECTION PVOID
21 /* FUNCTIONS *****************************************************************/
27 RtlDeleteCriticalSection(PCRITICAL_SECTION CriticalSection
)
35 RtlSetCriticalSectionSpinCount(
36 LPCRITICAL_SECTION CriticalSection
,
48 RtlEnterCriticalSection(PCRITICAL_SECTION CriticalSection
)
50 ExAcquireFastMutex((PFAST_MUTEX
) CriticalSection
);
58 RtlInitializeCriticalSection(PCRITICAL_SECTION CriticalSection
)
60 ExInitializeFastMutex((PFAST_MUTEX
)CriticalSection
);
61 return STATUS_SUCCESS
;
69 RtlLeaveCriticalSection(PCRITICAL_SECTION CriticalSection
)
71 ExReleaseFastMutex((PFAST_MUTEX
) CriticalSection
);
78 RtlTryEnterCriticalSection(PCRITICAL_SECTION CriticalSection
)
80 return ExTryToAcquireFastMutex((PFAST_MUTEX
) CriticalSection
);
88 RtlInitializeCriticalSectionAndSpinCount (
89 PCRITICAL_SECTION CriticalSection
,
92 ExInitializeFastMutex((PFAST_MUTEX
)CriticalSection
);
93 return STATUS_SUCCESS
;