https://git.reactos.org/?p=reactos.git;a=commitdiff;h=49da1cdbebf6293fa5c176...
commit 49da1cdbebf6293fa5c17645d13ba9ad547425d2 Author: Timo Kreuzer timo.kreuzer@reactos.org AuthorDate: Sat Aug 5 15:05:20 2023 +0300 Commit: Timo Kreuzer timo.kreuzer@reactos.org CommitDate: Fri Aug 11 19:00:42 2023 +0300
[NTDLL] Fix some vista exports
Make sure RtlRemovePrivileges gets compiled, when DLL_EXPORT_VERSION is 0x600+ Enable all existing functions from rtl_vista. Hack CsrNewThread export to exist on later versions, too --- dll/ntdll/def/ntdll.spec | 30 +++++++++++++++--------------- sdk/lib/rtl/priv.c | 2 +- 2 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/dll/ntdll/def/ntdll.spec b/dll/ntdll/def/ntdll.spec index 96200db55dc..801feeca335 100644 --- a/dll/ntdll/def/ntdll.spec +++ b/dll/ntdll/def/ntdll.spec @@ -38,7 +38,7 @@ @ stdcall CsrFreeCaptureBuffer(ptr) @ stdcall CsrGetProcessId() @ stdcall CsrIdentifyAlertableThread() -@ stdcall -version=0x502 CsrNewThread() +@ stdcall -version=0x502+ CsrNewThread() # Should be only 0x502, but we need it for now @ stdcall -version=0x502 CsrProbeForRead(ptr long long) @ stdcall -version=0x502 CsrProbeForWrite(ptr long long) @ stdcall CsrSetPriorityClass(ptr ptr) @@ -607,8 +607,8 @@ @ stdcall RtlAcquirePrivilege(ptr long long ptr) @ stdcall RtlAcquireResourceExclusive(ptr long) @ stdcall RtlAcquireResourceShared(ptr long) -@ stdcall -stub -version=0x600+ RtlAcquireSRWLockExclusive(ptr) -@ stdcall -stub -version=0x600+ RtlAcquireSRWLockShared(ptr) +@ stdcall -version=0x600+ RtlAcquireSRWLockExclusive(ptr) +@ stdcall -version=0x600+ RtlAcquireSRWLockShared(ptr) @ stdcall RtlActivateActivationContext(long ptr ptr) @ stdcall RtlActivateActivationContextEx(long ptr ptr ptr) @ stdcall -arch=x86_64,arm RtlActivateActivationContextUnsafeFast(ptr ptr) @@ -936,7 +936,7 @@ @ stdcall RtlInitUnicodeStringEx(ptr wstr) @ stdcall -stub RtlInitializeAtomPackage(ptr) @ stdcall RtlInitializeBitMap(ptr long long) -@ stdcall -stub -version=0x600+ RtlInitializeConditionVariable(ptr) +@ stdcall -version=0x600+ RtlInitializeConditionVariable(ptr) @ stdcall RtlInitializeContext(ptr ptr ptr ptr ptr) @ stdcall RtlInitializeCriticalSection(ptr) @ stdcall RtlInitializeCriticalSectionAndSpinCount(ptr long) @@ -949,7 +949,7 @@ @ stdcall RtlInitializeRXact(ptr long ptr) @ stdcall RtlInitializeResource(ptr) @ stdcall RtlInitializeSListHead(ptr) -@ stdcall -stub -version=0x600+ RtlInitializeSRWLock(ptr) +@ stdcall -version=0x600+ RtlInitializeSRWLock(ptr) @ stdcall RtlInitializeSid(ptr ptr long) @ stdcall RtlInsertElementGenericTable(ptr ptr long ptr) @ stdcall RtlInsertElementGenericTableAvl(ptr ptr long ptr) @@ -1108,8 +1108,8 @@ @ stdcall RtlReleasePrivilege(ptr) @ stdcall RtlReleaseRelativeName(ptr) @ stdcall RtlReleaseResource(ptr) -@ stdcall -stub -version=0x600+ RtlReleaseSRWLockExclusive(ptr) -@ stdcall -stub -version=0x600+ RtlReleaseSRWLockShared(ptr) +@ stdcall -version=0x600+ RtlReleaseSRWLockExclusive(ptr) +@ stdcall -version=0x600+ RtlReleaseSRWLockShared(ptr) @ stdcall RtlRemoteCall(ptr ptr ptr long ptr long long) @ stdcall -version=0x600+ RtlRemovePrivileges(ptr ptr long) @ stdcall RtlRemoveVectoredContinueHandler(ptr) @@ -1124,10 +1124,10 @@ @ stdcall RtlRevertMemoryStream(ptr) @ stdcall RtlRunDecodeUnicodeString(long ptr) @ stdcall RtlRunEncodeUnicodeString(long ptr) -@ stdcall -stub -version=0x600+ RtlRunOnceBeginInitialize(ptr long ptr) -@ stdcall -stub -version=0x600+ RtlRunOnceComplete(ptr long ptr) -@ stdcall -stub -version=0x600+ RtlRunOnceExecuteOnce(ptr ptr ptr ptr) -@ stdcall -stub -version=0x600+ RtlRunOnceInitialize(ptr) +@ stdcall -version=0x600+ RtlRunOnceBeginInitialize(ptr long ptr) +@ stdcall -version=0x600+ RtlRunOnceComplete(ptr long ptr) +@ stdcall -version=0x600+ RtlRunOnceExecuteOnce(ptr ptr ptr ptr) +@ stdcall -version=0x600+ RtlRunOnceInitialize(ptr) @ stdcall RtlSecondsSince1970ToTime(long ptr) @ stdcall RtlSecondsSince1980ToTime(long ptr) @ stdcall RtlSeekMemoryStream(ptr int64 long ptr) @@ -1177,8 +1177,8 @@ @ stub -version=0x600+ RtlSidHashLookup @ stub -version=0x600+ RtlSidIsHigherLevel @ stdcall RtlSizeHeap(long long ptr) -@ stdcall -stub -version=0x600+ RtlSleepConditionVariableCS(ptr ptr ptr) -@ stdcall -stub -version=0x600+ RtlSleepConditionVariableSRW(ptr ptr ptr long) +@ stdcall -version=0x600+ RtlSleepConditionVariableCS(ptr ptr ptr) +@ stdcall -version=0x600+ RtlSleepConditionVariableSRW(ptr ptr ptr long) @ stdcall RtlSplay(ptr) @ stdcall RtlStartRXact(ptr) @ stdcall RtlStatMemoryStream(ptr ptr long) @@ -1250,8 +1250,8 @@ @ stdcall RtlValidateUnicodeString(long ptr) @ stdcall RtlVerifyVersionInfo(ptr long double) @ stdcall -arch=x86_64 RtlVirtualUnwind(long long long ptr ptr ptr ptr ptr) -@ stdcall -stub -version=0x600+ RtlWakeAllConditionVariable(ptr) -@ stdcall -stub -version=0x600+ RtlWakeConditionVariable(ptr) +@ stdcall -version=0x600+ RtlWakeAllConditionVariable(ptr) +@ stdcall -version=0x600+ RtlWakeConditionVariable(ptr) @ stdcall RtlWalkFrameChain(ptr long long) @ stdcall RtlWalkHeap(long ptr) @ stub -version=0x600+ RtlWerpReportException diff --git a/sdk/lib/rtl/priv.c b/sdk/lib/rtl/priv.c index 0070140103f..d8240265359 100644 --- a/sdk/lib/rtl/priv.c +++ b/sdk/lib/rtl/priv.c @@ -487,7 +487,7 @@ RtlAdjustPrivilege(IN ULONG Privilege, return STATUS_SUCCESS; }
-#if (NTDDI_VERSION >= NTDDI_VISTA) +#if (NTDDI_VERSION >= NTDDI_VISTA) || (DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA)
/** * @brief