2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS System Libraries
5 * PURPOSE: Run-Time Libary Internal Header
6 * PROGRAMMER: Alex Ionescu
9 /* INCLUDES ******************************************************************/
11 /* PAGED_CODE equivalent for user-mode RTL */
13 extern VOID FASTCALL
CHECK_PAGED_CODE_RTL(char *file
, int line
);
14 #define PAGED_CODE_RTL() CHECK_PAGED_CODE_RTL(__FILE__, __LINE__)
16 #define PAGED_CODE_RTL()
19 /* These provide support for sharing code between User and Kernel RTL */
38 RtlDeleteHeapLock(PRTL_CRITICAL_SECTION CriticalSection
);
42 RtlEnterHeapLock(PRTL_CRITICAL_SECTION CriticalSection
);
46 RtlInitializeHeapLock(PRTL_CRITICAL_SECTION CriticalSection
);
50 RtlLeaveHeapLock(PRTL_CRITICAL_SECTION CriticalSection
);
54 RtlpCheckForActiveDebugger(VOID
);
58 RtlpHandleDpcStackException(IN PEXCEPTION_REGISTRATION_RECORD RegistrationFrame
,
59 IN ULONG_PTR RegistrationFrameEnd
,
60 IN OUT PULONG_PTR StackLow
,
61 IN OUT PULONG_PTR StackHigh
);
63 #define RtlpAllocateStringMemory RtlpAllocateMemory
64 #define RtlpFreeStringMemory RtlpFreeMemory
70 RtlpExecuteHandlerForException(PEXCEPTION_RECORD ExceptionRecord
,
71 PEXCEPTION_REGISTRATION_RECORD RegistrationFrame
,
73 PVOID DispatcherContext
,
74 PEXCEPTION_HANDLER ExceptionHandler
);
78 RtlpExecuteHandlerForUnwind(PEXCEPTION_RECORD ExceptionRecord
,
79 PEXCEPTION_REGISTRATION_RECORD RegistrationFrame
,
81 PVOID DispatcherContext
,
82 PEXCEPTION_HANDLER ExceptionHandler
);
86 RtlpCheckLogException(IN PEXCEPTION_RECORD ExceptionRecord
,
87 IN PCONTEXT ContextRecord
,
93 RtlpGetExceptionAddress(VOID
);
97 RtlpCaptureContext(OUT PCONTEXT ContextRecord
);
99 /* Tags for the String Allocators */
100 #define TAG_USTR TAG('U', 'S', 'T', 'R')
101 #define TAG_ASTR TAG('A', 'S', 'T', 'R')
102 #define TAG_OSTR TAG('O', 'S', 'T', 'R')