reactos/sdk/lib/rtl
2019-06-25 09:26:05 +02:00
..
amd64
arm
i386
powerpc
access.c
acl.c
actctx.c
appverifier.c
assert.c
atom.c
avlsupp.c
avltable.c
bitmap.c
bitmap64.c
bootdata.c
byteswap.c
CMakeLists.txt
compress.c
crc32.c
critical.c [RTL] Fix failure check in RtlpCreateCriticalSectionSem. 2019-06-25 09:26:05 +02:00
dbgbuffer.c
debug.c [SDK] Reset InDbgPrint state when an exception occurs 2019-01-05 15:21:40 +01:00
dos8dot3.c
encode.c
env.c
error.c
exception.c
generictable.c
handle.c
heap.c [RTL] Fix GCC build. 2019-02-17 09:59:49 +01:00
heap.h
heapdbg.c
heappage.c
heapuser.c
image.c
interlck.c
largeint.c
luid.c
mem.c
memstream.c
message.c
network.c
nls.c
path.c [RTL] Implement RtlComputePrivatizedDllName_U 2019-02-07 18:48:49 +01:00
ppb.c
prefix.c
priv.c
process.c
propvar.c
random.c
rangelist.c
readme.txt
registry.c
res.c
resource.c
rtl.h
rtlavl.h
rtlp.h
rxact.c
sd.c
security.c [RTL] Fix RtlNewSecurityGrantedAccess improperly zeroing output buffer 2018-12-31 11:19:36 +01:00
sid.c
slist.c
splaytree.c
sysvol.c
thread.c
time.c
timerqueue.c
timezone.c
trace.c
unicode.c
unicodeprefix.c
vectoreh.c
version.c
wait.c
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.