mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 19:05:52 +00:00
[NTDLL_APITEST]
- Add test for NtCreateThread with invalid ThreadContext parameter. Patch by Aleksander Andrejevic. CORE-7252 svn path=/trunk/; revision=60402
This commit is contained in:
parent
5c5939994a
commit
7c35998136
3 changed files with 36 additions and 0 deletions
|
@ -2,6 +2,7 @@
|
||||||
list(APPEND SOURCE
|
list(APPEND SOURCE
|
||||||
LdrEnumResources.c
|
LdrEnumResources.c
|
||||||
NtAllocateVirtualMemory.c
|
NtAllocateVirtualMemory.c
|
||||||
|
NtCreateThread.c
|
||||||
NtFreeVirtualMemory.c
|
NtFreeVirtualMemory.c
|
||||||
NtMapViewOfSection.c
|
NtMapViewOfSection.c
|
||||||
NtProtectVirtualMemory.c
|
NtProtectVirtualMemory.c
|
||||||
|
|
33
rostests/apitests/ntdll/NtCreateThread.c
Normal file
33
rostests/apitests/ntdll/NtCreateThread.c
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
/*
|
||||||
|
* PROJECT: ReactOS api tests
|
||||||
|
* LICENSE: See COPYING in the top level directory
|
||||||
|
* PURPOSE: Test for NtCreateThread
|
||||||
|
* PROGRAMMER: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define WIN32_NO_STATUS
|
||||||
|
#include <wine/test.h>
|
||||||
|
#include <ndk/pstypes.h>
|
||||||
|
#include <ndk/psfuncs.h>
|
||||||
|
|
||||||
|
START_TEST(NtCreateThread)
|
||||||
|
{
|
||||||
|
NTSTATUS Status;
|
||||||
|
INITIAL_TEB InitialTeb;
|
||||||
|
HANDLE ThreadHandle;
|
||||||
|
OBJECT_ATTRIBUTES Attributes;
|
||||||
|
|
||||||
|
InitializeObjectAttributes(&Attributes, NULL, 0, NULL, NULL);
|
||||||
|
ZeroMemory(&InitialTeb, sizeof(INITIAL_TEB));
|
||||||
|
|
||||||
|
Status = NtCreateThread(&ThreadHandle,
|
||||||
|
0,
|
||||||
|
&Attributes,
|
||||||
|
NtCurrentProcess(),
|
||||||
|
NULL,
|
||||||
|
(PCONTEXT)0x70000000, /* Aligned usermode address */
|
||||||
|
&InitialTeb,
|
||||||
|
FALSE);
|
||||||
|
|
||||||
|
ok_hex(Status, STATUS_ACCESS_VIOLATION);
|
||||||
|
}
|
|
@ -5,6 +5,7 @@
|
||||||
|
|
||||||
extern void func_LdrEnumResources(void);
|
extern void func_LdrEnumResources(void);
|
||||||
extern void func_NtAllocateVirtualMemory(void);
|
extern void func_NtAllocateVirtualMemory(void);
|
||||||
|
extern void func_NtCreateThread(void);
|
||||||
extern void func_NtFreeVirtualMemory(void);
|
extern void func_NtFreeVirtualMemory(void);
|
||||||
extern void func_NtMapViewOfSection(void);
|
extern void func_NtMapViewOfSection(void);
|
||||||
extern void func_NtProtectVirtualMemory(void);
|
extern void func_NtProtectVirtualMemory(void);
|
||||||
|
@ -28,6 +29,7 @@ const struct test winetest_testlist[] =
|
||||||
{
|
{
|
||||||
{ "LdrEnumResources", func_LdrEnumResources },
|
{ "LdrEnumResources", func_LdrEnumResources },
|
||||||
{ "NtAllocateVirtualMemory", func_NtAllocateVirtualMemory },
|
{ "NtAllocateVirtualMemory", func_NtAllocateVirtualMemory },
|
||||||
|
{ "NtCreateThread", func_NtCreateThread },
|
||||||
{ "NtFreeVirtualMemory", func_NtFreeVirtualMemory },
|
{ "NtFreeVirtualMemory", func_NtFreeVirtualMemory },
|
||||||
{ "NtMapViewOfSection", func_NtMapViewOfSection },
|
{ "NtMapViewOfSection", func_NtMapViewOfSection },
|
||||||
{ "NtProtectVirtualMemory", func_NtProtectVirtualMemory },
|
{ "NtProtectVirtualMemory", func_NtProtectVirtualMemory },
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue