required by mrac anti-cheat
-- v8: ntoskrnl: Implement KeGetCurrentProcessorNumberEx
From: Etaash Mathamsetty etaash.mathamsetty@gmail.com
Fix Review Feedback
use a var to store NtGetCurrentProcessorNumber value
fix compile error --- dlls/ntoskrnl.exe/ntoskrnl.c | 20 ++++++++++++++++++++ dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 1 + 2 files changed, 21 insertions(+)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index 031e9900544..4fcad09c5e5 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -3379,6 +3379,26 @@ VOID WINAPI KeSetTargetProcessorDpc(PRKDPC dpc, CCHAR number) FIXME("%p, %d stub\n", dpc, number); }
+/*********************************************************************** + * KeGetCurrentProcessorNumberEx (NTOSKRNL.EXE.@) + */ +ULONG WINAPI KeGetCurrentProcessorNumberEx(PPROCESSOR_NUMBER process_number) +{ + ULONG cur_number; + FIXME("%p semi-stub\n", process_number); + + cur_number = NtGetCurrentProcessorNumber(); + + if (process_number) + { + process_number->Group = 0; + process_number->Reserved = 0; + process_number->Number = cur_number; + } + + return cur_number; +} + /*********************************************************************** * READ_REGISTER_BUFFER_UCHAR (NTOSKRNL.EXE.@) */ diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec index e3898b06f89..2377311f9c5 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec +++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec @@ -555,6 +555,7 @@ @ stub KeFlushEntireTb @ stdcall KeFlushQueuedDpcs() @ stdcall KeGetCurrentProcessorNumber() NtGetCurrentProcessorNumber +@ stdcall KeGetCurrentProcessorNumberEx(ptr) @ stdcall KeGetCurrentThread() @ stub KeGetPreviousMode @ stub KeGetRecommendedSharedDataAlignment