Side note, while this change does not follow the MSDN, it appears that the MSDN incorrectly documents the function.
This blog post from 2006 explains more: https://blogs.msdn.microsoft.com/doronh/2006/03/09/beware-the-shiny-light-th...
On Tue, Jun 5, 2018 at 11:14 AM, Derek Lesho dereklesho52@gmail.com wrote:
Fixes an error inside EasyAntiCheat.sys, which uses MmIsAddressValid on ntoskrnl.exe, to find its base address. Wine will always return FALSE, because it checks for write access to ntoskrnl, when all the driver needs is read access
Tested on Arch Linux
Signed-off-by: Derek Lesho dereklesho52@Gmail.com
dlls/ntoskrnl.exe/ntoskrnl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index 55027c5..e4c1c35 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -2164,7 +2164,7 @@ void WINAPI MmFreeNonCachedMemory( void *addr, SIZE_T size ) BOOLEAN WINAPI MmIsAddressValid(PVOID VirtualAddress) { TRACE("(%p)\n", VirtualAddress);
- return !IsBadWritePtr(VirtualAddress, 1);
- return !IsBadReadPtr(VirtualAddress, 1);
}
/***********************************************************************
2.7.4