Author: tfaber Date: Sun Apr 23 08:10:46 2017 New Revision: 74390
URL: http://svn.reactos.org/svn/reactos?rev=74390&view=rev Log: [KMTESTS:MM] - Show that NtMapViewOfSection validates section and process handles before checking base address alignment CORE-13113
Modified: trunk/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c
Modified: trunk/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/kmtests/ntos_mm/ZwMapViewO... ============================================================================== --- trunk/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c [iso-8859-1] (original) +++ trunk/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c [iso-8859-1] Sun Apr 23 08:10:46 2017 @@ -142,6 +142,14 @@ BaseAddress = (PVOID)((char *)MmSystemRangeStart + 200); TestMapView(WriteSectionHandle, NtCurrentProcess(), &BaseAddress, 0, 0, NULL, &ViewSize, ViewUnmap, 0, PAGE_READWRITE, STATUS_INVALID_PARAMETER_3, IGNORE);
+ //invalid section handle AND unaligned base address + BaseAddress = (PVOID)0x00567A20; + TestMapView((HANDLE)0xDEADBEEF, NtCurrentProcess(), &BaseAddress, 0, 0, NULL, &ViewSize, ViewUnmap, 0, PAGE_READWRITE, STATUS_INVALID_HANDLE, IGNORE); + + //invalid process handle AND unaligned base address + BaseAddress = (PVOID)0x00567A20; + TestMapView(WriteSectionHandle, (HANDLE)0xDEADBEEF, &BaseAddress, 0, 0, NULL, &ViewSize, ViewUnmap, 0, PAGE_READWRITE, STATUS_INVALID_HANDLE, IGNORE); + //try mapping section to an already mapped address Status = ZwAllocateVirtualMemory(NtCurrentProcess(), &AllocBase, 0, &AllocSize, MEM_COMMIT, PAGE_READWRITE); if (!skip(NT_SUCCESS(Status), "Cannot allocate memory\n"))