reactos/sdk/lib/rtl
Jérôme Gardou 325737f855 [SDK:RTL] Track the end of uncommitted ranges thanks to a "Guard" entry that we put at the end of each committed page
This avoids busy loop to get the last valid entry of the previous committed range when committing a new one.

CORE-15793
2021-03-16 13:23:21 +01:00
..
amd64 [RTL][NTDLL] Add some function stubs 2020-01-03 13:00:45 +01:00
arm
i386 [RTL] Add FPO information to RtlpExecuteHandler. CORE-15723 2020-06-06 08:40:20 +02:00
powerpc
access.c
acl.c [SDK:RTL] RtlValidAcl(): Improve ACL error messages (#2833) 2020-06-05 00:20:20 +03:00
actctx.c [RTL] Add code to SxS manifest parser to parse XML namespaces (#2512) 2020-09-20 22:56:42 +02:00
appverifier.c
assert.c
atom.c
avlsupp.c
avltable.c
bitmap.c
bitmap64.c
bootdata.c
byteswap.c
CMakeLists.txt [RTL_VISTA] CMakeLists.txt: Fix 'rtl' copypasta (#3489) 2021-03-02 19:06:17 +01:00
compress.c
condvar.c [KERNEL32_VISTA][NTDLL_VISTA][RTL_VISTA] Move Vista Rtl functions from kernel32_vista and ntdll_vista to rtl_vista (#3149) 2020-09-12 15:04:02 +02:00
crc32.c
critical.c [SDK:RTL] Statically initialize RtlCriticalSectionList 2021-03-03 14:10:47 +01:00
dbgbuffer.c [RTL] Partially implement RtlCreateQueryDebugBuffer and RtlDestroyQueryDebugBuffer 2020-04-26 13:44:02 +02:00
debug.c
dos8dot3.c
encode.c
env.c
error.c
exception.c [RTL][NTDLL] Add some function stubs 2020-01-03 13:00:45 +01:00
generictable.c
handle.c
heap.c [SDK:RTL] Track the end of uncommitted ranges thanks to a "Guard" entry that we put at the end of each committed page 2021-03-16 13:23:21 +01:00
heap.h [SDK:RTL] Track the end of uncommitted ranges thanks to a "Guard" entry that we put at the end of each committed page 2021-03-16 13:23:21 +01:00
heapdbg.c
heappage.c
heapuser.c
image.c [RTL] Fix RtlImageDirectoryEntryToData to support both 32 and 64 bit images 2020-12-06 16:37:57 +01:00
interlck.c
largeint.c
luid.c
mem.c [NDK][XDK][RTL] Fix definition of RtlFillMemoryUlong on x64 2020-01-03 13:00:45 +01:00
memstream.c
message.c
network.c
nls.c
path.c
ppb.c
prefix.c
priv.c
process.c [NTOS:PS] On x64 don't fail in NtSetInformationProcess with ProcessUserModeIOPL information class, instead just don't do anything. 2020-09-20 23:08:17 +02:00
propvar.c
random.c
rangelist.c [RTL] Allow RtlGetNextRange to be called on a finished iterator. CORE-6372 2020-08-16 16:18:29 +02:00
readme.txt
registry.c
res.c
resource.c
rtl.h
rtl_vista.h [KERNEL32_VISTA][NTDLL_VISTA][RTL_VISTA] Move Vista Rtl functions from kernel32_vista and ntdll_vista to rtl_vista (#3149) 2020-09-12 15:04:02 +02:00
rtlavl.h
rtlp.h [RTL] Partially implement RtlCreateQueryDebugBuffer and RtlDestroyQueryDebugBuffer 2020-04-26 13:44:02 +02:00
runonce.c [KERNEL32_VISTA][NTDLL_VISTA][RTL_VISTA] Move Vista Rtl functions from kernel32_vista and ntdll_vista to rtl_vista (#3149) 2020-09-12 15:04:02 +02:00
rxact.c
sd.c
security.c
sid.c [RTL][NTDLL] Add some function stubs 2020-01-03 13:00:45 +01:00
slist.c
splaytree.c
srw.c [RTL] Fix a typo & remove useless cast 2021-02-01 09:09:19 +01:00
sysvol.c
thread.c
time.c
timerqueue.c [RTL][NTDLL] Add some function stubs 2020-01-03 13:00:45 +01:00
timezone.c
trace.c [RTL] Implement LdrpRecordUnloadEvent 2020-04-26 14:35:51 +02:00
unicode.c [RTL] Fix RtlValidateUnicodeString() regarding the tests and add some SAL annotations. 2020-01-02 21:11:28 +01:00
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.