From: Hermès Bélusca-Maïto Date: Sun, 22 Sep 2013 19:28:21 +0000 (+0000) Subject: [KMTESTS] X-Git-Tag: ReactOS-0.3.16~1226 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=2c7388a0b133cce691b7029c1c0622e9f3fb6f43 [KMTESTS] No need now to declare a NTSTATUS ExceptionStatus; variable to be able to use KmtStartSeh() / KmtEndSeh() macros; this is done automagically. svn path=/trunk/; revision=60320 --- diff --git a/rostests/kmtests/include/kmt_test.h b/rostests/kmtests/include/kmt_test.h index 0cfacbf8f88..bdc39c3a9c8 100644 --- a/rostests/kmtests/include/kmt_test.h +++ b/rostests/kmtests/include/kmt_test.h @@ -218,19 +218,24 @@ VOID KmtFreeGuarded(PVOID Pointer); #define MILLISECOND (1000 * MICROSECOND) #define SECOND (1000 * MILLISECOND) +/* See apitests/include/apitest.h */ #define KmtInvalidPointer ((PVOID)0x5555555555555555ULL) #define KmtStartSeh() \ - ExceptionStatus = STATUS_SUCCESS; \ +{ \ + NTSTATUS ExceptionStatus = STATUS_SUCCESS; \ _SEH2_TRY \ { + #define KmtEndSeh(ExpectedStatus) \ } \ _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) \ { \ ExceptionStatus = _SEH2_GetExceptionCode(); \ - } _SEH2_END; \ - ok_eq_hex(ExceptionStatus, ExpectedStatus) + } \ + _SEH2_END; \ + ok_eq_hex(ExceptionStatus, (ExpectedStatus)); \ +} #if defined KMT_DEFINE_TEST_FUNCTIONS diff --git a/rostests/kmtests/ntos_ex/ExPools.c b/rostests/kmtests/ntos_ex/ExPools.c index a9dc1176124..a0010612ba2 100644 --- a/rostests/kmtests/ntos_ex/ExPools.c +++ b/rostests/kmtests/ntos_ex/ExPools.c @@ -194,7 +194,6 @@ TestPoolQuota(VOID) LONG InitialRefCount; LONG RefCount; USHORT PoolType; - NTSTATUS ExceptionStatus; InitialRefCount = GetRefCount(Process); diff --git a/rostests/kmtests/ntos_io/IoEvent.c b/rostests/kmtests/ntos_io/IoEvent.c index 3da36478dc9..96360e96676 100644 --- a/rostests/kmtests/ntos_io/IoEvent.c +++ b/rostests/kmtests/ntos_io/IoEvent.c @@ -35,7 +35,6 @@ TestCreateEvent( EVENT_TYPE Type) { NTSTATUS Status; - NTSTATUS ExceptionStatus; PKEVENT Event, Event2; HANDLE EventHandle, EventHandle2; LONG State; diff --git a/rostests/kmtests/ntos_mm/MmSection.c b/rostests/kmtests/ntos_mm/MmSection.c index 128320797fa..259a228d671 100644 --- a/rostests/kmtests/ntos_mm/MmSection.c +++ b/rostests/kmtests/ntos_mm/MmSection.c @@ -77,7 +77,6 @@ TestCreateSection( IN PFILE_OBJECT FileObject2) { NTSTATUS Status = STATUS_SUCCESS; - NTSTATUS ExceptionStatus; PVOID SectionObject; LARGE_INTEGER MaximumSize; ULONG PointerCount1, PointerCount2; diff --git a/rostests/kmtests/ntos_mm/ZwAllocateVirtualMemory.c b/rostests/kmtests/ntos_mm/ZwAllocateVirtualMemory.c index eefd8b84840..67a8ec249fa 100644 --- a/rostests/kmtests/ntos_mm/ZwAllocateVirtualMemory.c +++ b/rostests/kmtests/ntos_mm/ZwAllocateVirtualMemory.c @@ -64,7 +64,6 @@ static SIZE_T CheckBufferRead(CONST VOID *Source, CONST VOID *Destination, SIZE_T Length, NTSTATUS ExpectedStatus) { - NTSTATUS ExceptionStatus; SIZE_T Match = 0; KmtStartSeh() @@ -79,7 +78,6 @@ VOID CheckBufferReadWrite(PVOID Destination, CONST VOID *Source, SIZE_T Length, NTSTATUS ExpectedStatus) { //do a little bit of writing/reading to memory - NTSTATUS ExceptionStatus; SIZE_T Match = 0; KmtStartSeh() @@ -167,7 +165,6 @@ NTSTATUS SimpleAllocation(VOID) { NTSTATUS Status; - NTSTATUS ExceptionStatus; PVOID Base = NULL; SIZE_T RegionSize = DEFAULT_ALLOC_SIZE; diff --git a/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c b/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c index 44f446f96ea..cd7f4e45a7c 100644 --- a/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c +++ b/rostests/kmtests/ntos_mm/ZwMapViewOfSection.c @@ -418,8 +418,6 @@ BehaviorChecks(HANDLE FileHandleReadOnly, HANDLE FileHandleWriteOnly) Status = ZwMapViewOfSection(WriteSectionHandle, NtCurrentProcess(), &BaseAddress, 0, 0, &SectionOffset, &ViewSize, ViewUnmap, 0, PAGE_READONLY); if (!skip(NT_SUCCESS(Status), "Error mapping view with READ priv. Error = %p\n", Status)) { - NTSTATUS ExceptionStatus; - Match = RtlCompareMemory(BaseAddress, TestString, TestStringSize); ok_eq_size(Match, TestStringSize); @@ -439,8 +437,6 @@ BehaviorChecks(HANDLE FileHandleReadOnly, HANDLE FileHandleWriteOnly) Status = ZwMapViewOfSection(WriteSectionHandle, NtCurrentProcess(), &BaseAddress, 0, 0, &SectionOffset, &ViewSize, ViewUnmap, 0, PAGE_NOACCESS); if (!skip(NT_SUCCESS(Status), "Error mapping view with PAGE_NOACCESS priv. Error = %p\n", Status)) { - NTSTATUS ExceptionStatus; - KmtStartSeh() RtlCompareMemory(BaseAddress, TestString, TestStringSize); KmtEndSeh(STATUS_ACCESS_VIOLATION); diff --git a/rostests/kmtests/ntos_ob/ObReference.c b/rostests/kmtests/ntos_ob/ObReference.c index 68b9a3284d0..806f1d1333e 100644 --- a/rostests/kmtests/ntos_ob/ObReference.c +++ b/rostests/kmtests/ntos_ob/ObReference.c @@ -142,7 +142,6 @@ TestReference( START_TEST(ObReference) { NTSTATUS Status; - NTSTATUS ExceptionStatus; HANDLE DirectoryHandle = NULL; OBJECT_ATTRIBUTES ObjectAttributes; UNICODE_STRING Name, *pName; @@ -240,8 +239,7 @@ START_TEST(ObReference) Status = ObReferenceObjectByPointer(NULL, 0, NULL, UserMode); Status = ObReferenceObjectByPointer(NULL, 0, NULL, KernelMode);*/ - ExceptionStatus = STATUS_SUCCESS; - _SEH2_TRY { + KmtStartSeh() /* TODO: this belongs in an ObHandle test if we ever have one */ /* NtClose must accept everything */ DPRINT("Closing null handle (NtClose)\n"); @@ -314,10 +312,7 @@ START_TEST(ObReference) /* INVALID_KERNEL_HANDLE, 0x7B, 1, 0, 0 Status = ObCloseHandle((HANDLE)123, KernelMode); Status = ObCloseHandle((HANDLE)(123 | 0x80000000), KernelMode);*/ - } _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { - ExceptionStatus = _SEH2_GetExceptionCode(); - } _SEH2_END; - ok_eq_hex(ExceptionStatus, STATUS_SUCCESS); + KmtEndSeh(STATUS_SUCCESS); if (ObDirectoryObjectType) { diff --git a/rostests/kmtests/rtl/RtlException.c b/rostests/kmtests/rtl/RtlException.c index e2872dda36d..425bb785827 100644 --- a/rostests/kmtests/rtl/RtlException.c +++ b/rostests/kmtests/rtl/RtlException.c @@ -9,7 +9,6 @@ START_TEST(RtlException) { - NTSTATUS ExceptionStatus; PCHAR Buffer[128]; /* Access a valid pointer - must not trigger SEH */ diff --git a/rostests/kmtests/rtl/RtlUnicodeString.c b/rostests/kmtests/rtl/RtlUnicodeString.c index c6289dcd90b..e8a871bf341 100644 --- a/rostests/kmtests/rtl/RtlUnicodeString.c +++ b/rostests/kmtests/rtl/RtlUnicodeString.c @@ -13,7 +13,6 @@ VOID TestFindCharInUnicodeString(VOID) { #ifdef KMT_USER_MODE - NTSTATUS ExceptionStatus; NTSTATUS Status; UNICODE_STRING String = RTL_CONSTANT_STRING(L"I am a string"); UNICODE_STRING Chars = RTL_CONSTANT_STRING(L"a");