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(BOOLEAN Type
);
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
68 RtlpSetInDbgPrint(IN BOOLEAN NewValue
);
74 RtlpExecuteHandlerForException(PEXCEPTION_RECORD ExceptionRecord
,
75 PEXCEPTION_REGISTRATION_RECORD RegistrationFrame
,
77 PVOID DispatcherContext
,
78 PEXCEPTION_HANDLER ExceptionHandler
);
82 RtlpExecuteHandlerForUnwind(PEXCEPTION_RECORD ExceptionRecord
,
83 PEXCEPTION_REGISTRATION_RECORD RegistrationFrame
,
85 PVOID DispatcherContext
,
86 PEXCEPTION_HANDLER ExceptionHandler
);
90 RtlpCheckLogException(IN PEXCEPTION_RECORD ExceptionRecord
,
91 IN PCONTEXT ContextRecord
,
97 RtlpGetExceptionAddress(VOID
);
101 RtlpCaptureContext(OUT PCONTEXT ContextRecord
);
106 DebugService(IN ULONG Service
,
112 /* Tags for the String Allocators */
113 #define TAG_USTR TAG('U', 'S', 'T', 'R')
114 #define TAG_ASTR TAG('A', 'S', 'T', 'R')
115 #define TAG_OSTR TAG('O', 'S', 'T', 'R')