-- v2: include: Move RTL functions that belong in ntddk.h from winternl.h to ntddk.h.
From: Alex Henrie alexhenrie24@gmail.com
--- dlls/kernel32/lzexpand.c | 3 +++ dlls/kernel32/resource.c | 1 + dlls/kernelbase/loader.c | 1 + dlls/kernelbase/security.c | 1 + dlls/krnl386.exe16/atom.c | 3 +++ dlls/krnl386.exe16/ne_module.c | 3 +++ dlls/ntdll/actctx.c | 1 + dlls/ntdll/rtlstr.c | 1 + dlls/ntdll/tests/path.c | 1 + dlls/secur32/lsa.c | 1 + dlls/winmm/mmio.c | 3 +++ include/ddk/ntddk.h | 12 ++++++++++++ include/winternl.h | 9 --------- programs/services/rpc.c | 3 +++ 14 files changed, 34 insertions(+), 9 deletions(-)
diff --git a/dlls/kernel32/lzexpand.c b/dlls/kernel32/lzexpand.c index 532c26cbedf..4e5de516553 100644 --- a/dlls/kernel32/lzexpand.c +++ b/dlls/kernel32/lzexpand.c @@ -39,10 +39,13 @@ #include <stdarg.h> #include <stdio.h>
+#include "ntstatus.h" +#define WIN32_NO_STATUS #include "windef.h" #include "winbase.h" #include "winnls.h" #include "winternl.h" +#include "ddk/ntddk.h" #include "lzexpand.h"
#include "wine/debug.h" diff --git a/dlls/kernel32/resource.c b/dlls/kernel32/resource.c index 2ea5d59e0ae..db2e1ce3aab 100644 --- a/dlls/kernel32/resource.c +++ b/dlls/kernel32/resource.c @@ -27,6 +27,7 @@ #include "windef.h" #include "winbase.h" #include "winternl.h" +#include "ddk/ntddk.h" #include "wine/debug.h" #include "wine/exception.h" #include "wine/list.h" diff --git a/dlls/kernelbase/loader.c b/dlls/kernelbase/loader.c index 8778503fc2a..59b91596f13 100644 --- a/dlls/kernelbase/loader.c +++ b/dlls/kernelbase/loader.c @@ -28,6 +28,7 @@ #include "winbase.h" #include "winnls.h" #include "winternl.h" +#include "ddk/ntddk.h" #include "kernelbase.h" #include "wine/list.h" #include "wine/asm.h" diff --git a/dlls/kernelbase/security.c b/dlls/kernelbase/security.c index 4434a59a53a..1dd975a7aad 100644 --- a/dlls/kernelbase/security.c +++ b/dlls/kernelbase/security.c @@ -29,6 +29,7 @@ #include "winerror.h" #include "winternl.h" #include "winioctl.h" +#include "ddk/ntddk.h"
#include "kernelbase.h" #include "wine/debug.h" diff --git a/dlls/krnl386.exe16/atom.c b/dlls/krnl386.exe16/atom.c index b100ce13af0..dd47407b912 100644 --- a/dlls/krnl386.exe16/atom.c +++ b/dlls/krnl386.exe16/atom.c @@ -31,10 +31,13 @@ #include <string.h> #include <ctype.h>
+#include "ntstatus.h" +#define WIN32_NO_STATUS #include "windef.h" #include "winbase.h" #include "winerror.h" #include "winternl.h" +#include "ddk/ntddk.h"
#include "wine/winbase16.h" #include "kernel16_private.h" diff --git a/dlls/krnl386.exe16/ne_module.c b/dlls/krnl386.exe16/ne_module.c index 82b976fab6b..2f2431884b9 100644 --- a/dlls/krnl386.exe16/ne_module.c +++ b/dlls/krnl386.exe16/ne_module.c @@ -26,10 +26,13 @@ #include <string.h> #include <ctype.h>
+#include "ntstatus.h" +#define WIN32_NO_STATUS #include "windef.h" #include "wine/winbase16.h" #include "wownt32.h" #include "winternl.h" +#include "ddk/ntddk.h" #include "kernel16_private.h" #include "wine/exception.h" #include "wine/debug.h" diff --git a/dlls/ntdll/actctx.c b/dlls/ntdll/actctx.c index d08519b83b8..9379d20b6c1 100644 --- a/dlls/ntdll/actctx.c +++ b/dlls/ntdll/actctx.c @@ -29,6 +29,7 @@ #include "ntstatus.h" #define WIN32_NO_STATUS #include "winternl.h" +#include "ddk/ntddk.h" #include "ddk/wdm.h" #include "ntdll_misc.h" #include "wine/exception.h" diff --git a/dlls/ntdll/rtlstr.c b/dlls/ntdll/rtlstr.c index 13f91533100..9326c73070e 100644 --- a/dlls/ntdll/rtlstr.c +++ b/dlls/ntdll/rtlstr.c @@ -30,6 +30,7 @@ #include "windef.h" #include "winnt.h" #include "winternl.h" +#include "ddk/ntddk.h" #include "wine/debug.h" #include "ntdll_misc.h"
diff --git a/dlls/ntdll/tests/path.c b/dlls/ntdll/tests/path.c index 4771a3f588b..f68a3de8bdb 100644 --- a/dlls/ntdll/tests/path.c +++ b/dlls/ntdll/tests/path.c @@ -20,6 +20,7 @@
#include "ntdll_test.h" #include "winnls.h" +#include "ddk/ntddk.h"
static NTSTATUS (WINAPI *pRtlMultiByteToUnicodeN)( LPWSTR dst, DWORD dstlen, LPDWORD reslen, LPCSTR src, DWORD srclen ); diff --git a/dlls/secur32/lsa.c b/dlls/secur32/lsa.c index 9bcf0bf7152..3b124c4da1f 100644 --- a/dlls/secur32/lsa.c +++ b/dlls/secur32/lsa.c @@ -32,6 +32,7 @@ #include "ntsecapi.h" #include "ntsecpkg.h" #include "winternl.h" +#include "ddk/ntddk.h" #include "rpc.h"
#include "wine/debug.h" diff --git a/dlls/winmm/mmio.c b/dlls/winmm/mmio.c index 92c17a03fe0..7b7dbc3bf67 100644 --- a/dlls/winmm/mmio.c +++ b/dlls/winmm/mmio.c @@ -35,10 +35,13 @@ #include <errno.h> #include <assert.h>
+#include "ntstatus.h" +#define WIN32_NO_STATUS #include "windef.h" #include "winbase.h" #include "winnls.h" #include "winternl.h" +#include "ddk/ntddk.h" #include "mmsystem.h" #include "winemm.h"
diff --git a/include/ddk/ntddk.h b/include/ddk/ntddk.h index e8d9bb89ad4..471c27c27ba 100644 --- a/include/ddk/ntddk.h +++ b/include/ddk/ntddk.h @@ -266,11 +266,23 @@ NTSTATUS WINAPI PsSetCreateProcessNotifyRoutineEx(PCREATE_PROCESS_NOTIFY_ROUTIN NTSTATUS WINAPI PsSetCreateThreadNotifyRoutine(PCREATE_THREAD_NOTIFY_ROUTINE); NTSTATUS WINAPI PsSetLoadImageNotifyRoutine(PLOAD_IMAGE_NOTIFY_ROUTINE); NTSTATUS WINAPI PsSetLoadImageNotifyRoutineEx(PLOAD_IMAGE_NOTIFY_ROUTINE,ULONG_PTR); +LONG WINAPI RtlCompareString(const STRING*,const STRING*,BOOLEAN); +void WINAPI RtlCopyString(STRING*,const STRING*); +BOOLEAN WINAPI RtlEqualString(const STRING*,const STRING*,BOOLEAN); void * WINAPI RtlGetElementGenericTable(PRTL_GENERIC_TABLE,ULONG); void WINAPI RtlInitializeGenericTable(PRTL_GENERIC_TABLE,PRTL_GENERIC_COMPARE_ROUTINE,PRTL_GENERIC_ALLOCATE_ROUTINE,PRTL_GENERIC_FREE_ROUTINE,void *); void WINAPI RtlInitializeGenericTableAvl(PRTL_AVL_TABLE,PRTL_AVL_COMPARE_ROUTINE,PRTL_AVL_ALLOCATE_ROUTINE, PRTL_AVL_FREE_ROUTINE,void *); void WINAPI RtlInsertElementGenericTableAvl(PRTL_AVL_TABLE,void *,ULONG,BOOL*); void * WINAPI RtlLookupElementGenericTable(PRTL_GENERIC_TABLE,void *); +void WINAPI RtlMapGenericMask(ACCESS_MASK*,const GENERIC_MAPPING*); ULONG WINAPI RtlNumberGenericTableElements(PRTL_GENERIC_TABLE); +BOOLEAN WINAPI RtlPrefixUnicodeString(const UNICODE_STRING*,const UNICODE_STRING*,BOOLEAN); +NTSTATUS WINAPI RtlUpcaseUnicodeString(UNICODE_STRING*,const UNICODE_STRING*,BOOLEAN); +char WINAPI RtlUpperChar(char); +void WINAPI RtlUpperString(STRING*,const STRING*); + +#ifndef _WIN64 +ULONGLONG WINAPI RtlLargeIntegerDivide(ULONGLONG,ULONGLONG,ULONGLONG*); +#endif
#endif diff --git a/include/winternl.h b/include/winternl.h index d0f37c2bada..31785e2719e 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -4647,7 +4647,6 @@ NTSYSAPI NTSTATUS WINAPI RtlCheckRegistryKey(ULONG, PWSTR); NTSYSAPI void WINAPI RtlClearAllBits(PRTL_BITMAP); NTSYSAPI void WINAPI RtlClearBits(PRTL_BITMAP,ULONG,ULONG); NTSYSAPI ULONG WINAPI RtlCompactHeap(HANDLE,ULONG); -NTSYSAPI LONG WINAPI RtlCompareString(const STRING*,const STRING*,BOOLEAN); NTSYSAPI LONG WINAPI RtlCompareUnicodeString(const UNICODE_STRING*,const UNICODE_STRING*,BOOLEAN); NTSYSAPI LONG WINAPI RtlCompareUnicodeStrings(const WCHAR*,SIZE_T,const WCHAR*,SIZE_T,BOOLEAN); NTSYSAPI NTSTATUS WINAPI RtlCompressBuffer(USHORT,PUCHAR,ULONG,PUCHAR,ULONG,ULONG,PULONG,PVOID); @@ -4660,7 +4659,6 @@ NTSYSAPI void WINAPI RtlCopyLuid(PLUID,const LUID*); NTSYSAPI void WINAPI RtlCopyLuidAndAttributesArray(ULONG,const LUID_AND_ATTRIBUTES*,PLUID_AND_ATTRIBUTES); NTSYSAPI NTSTATUS WINAPI RtlCopySecurityDescriptor(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR); NTSYSAPI BOOLEAN WINAPI RtlCopySid(DWORD,PSID,PSID); -NTSYSAPI void WINAPI RtlCopyString(STRING*,const STRING*); NTSYSAPI void WINAPI RtlCopyUnicodeString(UNICODE_STRING*,const UNICODE_STRING*); NTSYSAPI NTSTATUS WINAPI RtlCreateAcl(PACL,DWORD,DWORD); NTSYSAPI NTSTATUS WINAPI RtlCreateActivationContext(HANDLE*,const void*); @@ -4724,7 +4722,6 @@ NTSYSAPI NTSTATUS WINAPI RtlEqualDomainName(const UNICODE_STRING*,const UNICODE NTSYSAPI BOOLEAN WINAPI RtlEqualLuid(const LUID*,const LUID*); NTSYSAPI BOOL WINAPI RtlEqualPrefixSid(PSID,PSID); NTSYSAPI BOOL WINAPI RtlEqualSid(PSID,PSID); -NTSYSAPI BOOLEAN WINAPI RtlEqualString(const STRING*,const STRING*,BOOLEAN); NTSYSAPI BOOLEAN WINAPI RtlEqualUnicodeString(const UNICODE_STRING*,const UNICODE_STRING*,BOOLEAN); NTSYSAPI void WINAPI RtlEraseUnicodeString(UNICODE_STRING*); NTSYSAPI void DECLSPEC_NORETURN WINAPI RtlExitUserProcess(ULONG); @@ -4864,7 +4861,6 @@ NTSYSAPI void * WINAPI RtlLocateLegacyContext(CONTEXT_EX*,ULONG*); NTSYSAPI BOOLEAN WINAPI RtlLockHeap(HANDLE); NTSYSAPI NTSTATUS WINAPI RtlLookupAtomInAtomTable(RTL_ATOM_TABLE,const WCHAR*,RTL_ATOM*); NTSYSAPI NTSTATUS WINAPI RtlMakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,LPDWORD); -NTSYSAPI void WINAPI RtlMapGenericMask(PACCESS_MASK,const GENERIC_MAPPING*); NTSYSAPI NTSTATUS WINAPI RtlMultiByteToUnicodeN(LPWSTR,DWORD,LPDWORD,LPCSTR,DWORD); NTSYSAPI NTSTATUS WINAPI RtlMultiByteToUnicodeSize(DWORD*,LPCSTR,ULONG); NTSYSAPI NTSTATUS WINAPI RtlNewSecurityObject(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,BOOLEAN,HANDLE,PGENERIC_MAPPING); @@ -4884,7 +4880,6 @@ NTSYSAPI NTSTATUS WINAPI RtlOpenCurrentUser(ACCESS_MASK,PHANDLE); NTSYSAPI NTSTATUS WINAPI RtlPinAtomInAtomTable(RTL_ATOM_TABLE,RTL_ATOM); NTSYSAPI void WINAPI RtlPopFrame(TEB_ACTIVE_FRAME*); NTSYSAPI BOOLEAN WINAPI RtlPrefixString(const STRING*,const STRING*,BOOLEAN); -NTSYSAPI BOOLEAN WINAPI RtlPrefixUnicodeString(const UNICODE_STRING*,const UNICODE_STRING*,BOOLEAN); NTSYSAPI void WINAPI RtlProcessFlsData(void*,ULONG); NTSYSAPI void WINAPI RtlPushFrame(TEB_ACTIVE_FRAME*); NTSYSAPI NTSTATUS WINAPI RtlQueryActivationContextApplicationSettings(DWORD,HANDLE,const WCHAR*,const WCHAR*,WCHAR*,SIZE_T,SIZE_T*); @@ -4976,7 +4971,6 @@ NTSYSAPI NTSTATUS WINAPI RtlUnicodeToUTF8N(LPSTR,DWORD,LPDWORD,LPCWSTR,DWORD); NTSYSAPI ULONG WINAPI RtlUniform(PULONG); NTSYSAPI BOOLEAN WINAPI RtlUnlockHeap(HANDLE); NTSYSAPI WCHAR WINAPI RtlUpcaseUnicodeChar(WCHAR); -NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeString(UNICODE_STRING*,const UNICODE_STRING *,BOOLEAN); NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToAnsiString(STRING*,const UNICODE_STRING*,BOOLEAN); NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToCountedOemString(STRING*,const UNICODE_STRING*,BOOLEAN); NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToOemString(STRING*,const UNICODE_STRING*,BOOLEAN); @@ -4984,8 +4978,6 @@ NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToCustomCPN(CPTABLEINFO*,char*,DWORD,D NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToMultiByteN(LPSTR,DWORD,LPDWORD,LPCWSTR,DWORD); NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToOemN(LPSTR,DWORD,LPDWORD,LPCWSTR,DWORD); NTSYSAPI NTSTATUS WINAPI RtlUpdateTimer(HANDLE, HANDLE, DWORD, DWORD); -NTSYSAPI CHAR WINAPI RtlUpperChar(CHAR); -NTSYSAPI void WINAPI RtlUpperString(STRING *,const STRING *); NTSYSAPI void WINAPI RtlUserThreadStart(PRTL_THREAD_START_ROUTINE,void*); NTSYSAPI BOOLEAN WINAPI RtlValidAcl(PACL); NTSYSAPI BOOLEAN WINAPI RtlValidRelativeSecurityDescriptor(PSECURITY_DESCRIPTOR,ULONG,SECURITY_INFORMATION); @@ -5085,7 +5077,6 @@ NTSYSAPI LONGLONG WINAPI RtlExtendedLargeIntegerDivide(LONGLONG,INT,INT *); NTSYSAPI LONGLONG WINAPI RtlInterlockedCompareExchange64(LONGLONG*,LONGLONG,LONGLONG); NTSYSAPI LONGLONG WINAPI RtlLargeIntegerAdd(LONGLONG,LONGLONG); NTSYSAPI LONGLONG WINAPI RtlLargeIntegerArithmeticShift(LONGLONG,INT); -NTSYSAPI ULONGLONG WINAPI RtlLargeIntegerDivide( ULONGLONG,ULONGLONG,ULONGLONG *); NTSYSAPI LONGLONG WINAPI RtlLargeIntegerNegate(LONGLONG); NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftLeft(LONGLONG,INT); NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftRight(LONGLONG,INT); diff --git a/programs/services/rpc.c b/programs/services/rpc.c index b8e42f13938..835516861f0 100644 --- a/programs/services/rpc.c +++ b/programs/services/rpc.c @@ -21,9 +21,12 @@ #define WIN32_LEAN_AND_MEAN
#include <stdarg.h> +#include <ntstatus.h> +#define WIN32_NO_STATUS #include <windows.h> #include <winternl.h> #include <winsvc.h> +#include <ddk/ntddk.h> #include <ntsecapi.h> #include <rpc.h>
On Tue Sep 26 16:31:04 2023 +0000, Hans Leidekker wrote:
Actually they are in wdm.h in version 10.0.22621.0.
You're right, those two functions are in wdm.h now. Thanks for pointing that out. I just pushed a smaller patch that leaves them in winternl.h for now; I expect to move them to wdm.h in a later patch.
This merge request was approved by Hans Leidekker.