[NTDLL_VISTA:LDR] Implement DLL Notification (#6795)

Implement DLL Load Notification, an NT6+ feature.
https://learn.microsoft.com/en-us/windows/win32/devnotes/dll-load-notification

- [RTL] Sync `RTL_STATIC_LIST_HEAD` and `RtlFailFast` from XDK to NDK.
- [NTDLL_VISTA] Introduce ntdll_vista_static static library and link both ntdll_vista and ntdll to it.
- [NDK][LDR] Add and fix DLL Notification definitions.
- [NTDLL_VISTA] Code improvements.
- [NTDLL_VISTA:LDR] Implement Dll Notification.
- [NTDLL][NTDLL_APITEST] Add Dll Notification API test.
This commit is contained in:
Ratin Gao 2025-03-03 04:13:33 +08:00 committed by GitHub
parent 6988b4e2c4
commit ccf1e97aa1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
22 changed files with 539 additions and 53 deletions

View file

@ -39,6 +39,18 @@ extern "C" {
//
// List Functions
//
DECLSPEC_NORETURN
FORCEINLINE
VOID
RtlFailFast(
_In_ ULONG Code)
{
__fastfail(Code);
}
#define RTL_STATIC_LIST_HEAD(x) LIST_ENTRY x = { &x, &x }
FORCEINLINE
VOID
InitializeListHead(