reactos/sdk/lib/rtl
2023-01-06 14:44:49 +01:00
..
amd64 [RTL] Implement RtlUnwind 2022-11-24 21:17:58 +02:00
arm
i386 [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
access.c
acl.c
actctx.c [RTL] Check and cascade down RtlGUIDFromString value 2021-06-28 10:20:57 +02:00
appverifier.c
assert.c [KERNEL32][NTOS:PS][RTL] Cleanup some DbgPrompt() calls. 2023-01-06 14:44:49 +01:00
atom.c
avlsupp.c
avltable.c [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
bitmap.c
bitmap64.c
bootdata.c
byteswap.c
CMakeLists.txt [RTL] Implement dynamic function tables for x64 2022-06-25 21:45:47 +02:00
compress.c
condvar.c
crc32.c
critical.c [REACTOS] Fix some instances of DPRINTs with trailing whitespace before newlines. 2021-09-13 03:52:19 +02:00
dbgbuffer.c [REACTOS] Fix some instances of DPRINTs with trailing whitespace before newlines. 2021-09-13 03:52:19 +02:00
debug.c
dos8dot3.c [RTL] Properly truncate 8dot3 names when using a MultiByte OEM code page 2021-05-19 22:50:29 +02:00
encode.c
env.c
error.c [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
exception.c [REACTOS] Fix some instances of DPRINTs with trailing whitespace before newlines. 2021-09-13 03:52:19 +02:00
generictable.c
handle.c
heap.c [NDK][NTDLL][RTL] RtlCreateTagHeap(): Fix types and annotations 2022-02-03 20:21:40 +01:00
heap.h
heapdbg.c
heappage.c [RTL] Use RtlApplicationVerifierStop for DPH 2022-11-01 21:26:05 +01:00
heapuser.c
image.c
interlck.c
largeint.c
luid.c
mem.c
memstream.c
message.c
network.c
nls.c [SDK:RTL] Minimal formatting for NLS functions + Remove inadequate assert in RtlUpcaseUnicodeToOemN(). 2022-04-07 03:19:06 +02:00
path.c [SDK:RTL] Consistently use the Allocate/FreeStringMemory helpers when allocating/freeing string buffers. 2022-03-25 18:54:21 +01:00
ppb.c
prefix.c
priv.c [RTL][NTDLL_APITEST] Implement RtlRemovePrivileges (#4614) 2022-10-05 14:31:39 +02:00
process.c [REACTOS] Fix some instances of DPRINTs with trailing whitespace before newlines. 2021-09-13 03:52:19 +02:00
propvar.c
random.c
rangelist.c
readme.txt
registry.c [SDK:RTL] Consistently use the Allocate/FreeStringMemory helpers when allocating/freeing string buffers. 2022-03-25 18:54:21 +01:00
res.c [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
resource.c
rtl.h [BOOT][SDK:RTL] Compile a reduced RTL library for FreeLdr / NT bootloader... 2022-04-07 03:19:09 +02:00
rtl_vista.h [SDK:RTL] Don't copy-paste rtl.h into rtl_vista.h; just include it instead. 2022-03-25 18:54:20 +01:00
rtlavl.h [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
rtlp.h [BOOT][SDK:RTL] Compile a reduced RTL library for FreeLdr / NT bootloader... 2022-04-07 03:19:09 +02:00
runonce.c [RTL][NTOS_VISTA] Move the RTL UTF8 functions to the main RTL library, to be linked in the rtl_vista target instead. 2022-04-03 20:41:11 +02:00
rxact.c
sd.c
security.c [RTL] RtlDefaultNpAcl(): Don't hardcode SidBuffer size, but deduce it through FIELD_OFFSETs. 2022-11-03 02:50:21 +01:00
sid.c
slist.c [RTL] Implement x64 version of RtlInterlockedPushListSList 2022-11-24 21:17:58 +02:00
splaytree.c [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
srw.c
sysvol.c [RTL] When taking system volume ownership, assert that we succeeded to restore privileges 2021-06-28 10:20:57 +02:00
thread.c
time.c
timerqueue.c
timezone.c
trace.c
unicode.c [SDK:RTL] Minimal formatting for NLS functions + Remove inadequate assert in RtlUpcaseUnicodeToOemN(). 2022-04-07 03:19:06 +02:00
unicodeprefix.c [NDK] Fix description for PIO_APC_ROUTINE. 2022-11-26 02:38:52 +01:00
utf8.c [RTL][NTOS_VISTA] Move the RTL UTF8 functions to the main RTL library, to be linked in the rtl_vista target instead. 2022-04-03 20:41:11 +02:00
vectoreh.c
version.c [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
wait.c [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
workitem.c

RTL restrictions:

ExAllocatePool (and friends) must be used exclusively. RtlAllocateHeap (and friends) must NOT be used! ExAllocatePool (and friends) translate to RtlAllocateHeap (and friends) in ntdll\rtl\libsupp.c.

RtlEnterCriticalSection (and friends) must be used exclusively. ExAcquireFastMutex (and friends) must NOT be used! RtlEnterCriticalSection (and friends) translate to ExAcquireFastMutex (and friends) in ntoskrnl\rtl\libsupp.c. This means that RtlEnterCriticalSection (and friends) can NOT be used recursively in RTL. The reason for choosing RtlEnterCriticalSection (and friends) over ExAcquireFastMutex (and friends) is that the FAST_MUTEX struct is smaller than the RTL_CRITICAL_SECTION struct.