From: Austin English Subject: ntdll: add RtlCreateUserProcess stub Message-Id: Date: Sun, 27 Dec 2015 00:53:07 -0600 Using info from http://www.rohitab.com/discuss/topic/40191-ntcreateuserprocess/ Fixes https://bugs.winehq.org/show_bug.cgi?id=38722 -- -Austin From f762fd7a24cbd549c5185d7eb7654dc78bf82a49 Mon Sep 17 00:00:00 2001 From: Austin English Date: Sun, 27 Dec 2015 00:51:18 -0600 Subject: [PATCH] ntdll: add RtlCreateUserProcess stub Signed-off-by: Austin English --- dlls/ntdll/ntdll.spec | 2 +- dlls/ntdll/rtl.c | 13 +++++++++++++ include/winternl.h | 9 +++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec index 8cabf95..feb3e56 100644 --- a/dlls/ntdll/ntdll.spec +++ b/dlls/ntdll/ntdll.spec @@ -505,7 +505,7 @@ @ stdcall RtlCreateTimerQueue(ptr) @ stdcall RtlCreateUnicodeString(ptr wstr) @ stdcall RtlCreateUnicodeStringFromAsciiz(ptr str) -@ stub RtlCreateUserProcess +@ stdcall RtlCreateUserProcess(wstr long ptr ptr ptr ptr long ptr ptr ptr) @ stub RtlCreateUserSecurityObject @ stdcall RtlCreateUserThread(long ptr long ptr long long ptr ptr ptr ptr) @ stub RtlCustomCPToUnicodeN diff --git a/dlls/ntdll/rtl.c b/dlls/ntdll/rtl.c index 74ad35a..949e074 100644 --- a/dlls/ntdll/rtl.c +++ b/dlls/ntdll/rtl.c @@ -1613,3 +1613,16 @@ void WINAPI RtlInsertElementGenericTableAvl(PRTL_AVL_TABLE table, void *buffer, { FIXME("%p %p %u %p: stub\n", table, buffer, size, element); } + +/********************************************************************** + * RtlCreateUserProcess [NTDLL.@] + */ +NTSTATUS WINAPI RtlCreateUserProcess(UNICODE_STRING *path, ULONG attributes, RTL_USER_PROCESS_PARAMETERS *parameters, + PSECURITY_DESCRIPTOR *process_descriptor, PSECURITY_DESCRIPTOR *thread_descriptor, + HANDLE parent, BOOLEAN inherit, HANDLE debug, HANDLE exception, + PRTL_USER_PROCESS_INFORMATION info) +{ + FIXME("(%p %u %p %p %p %p %d %p %p %p): stub\n", path, attributes, parameters, process_descriptor, thread_descriptor, + parent, inherit, debug, exception, info); + return STATUS_NOT_IMPLEMENTED; +} diff --git a/include/winternl.h b/include/winternl.h index ecd5791..b7c39bf 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -1892,6 +1892,15 @@ typedef struct _LPC_MESSAGE { UCHAR Data[ANYSIZE_ARRAY]; } LPC_MESSAGE, *PLPC_MESSAGE; +typedef struct _RTL_USER_PROCESS_INFORMATION +{ + ULONG Length; + HANDLE Process; + HANDLE Thread; + CLIENT_ID ClientId; + SECTION_IMAGE_INFORMATION ImageInformation; +} RTL_USER_PROCESS_INFORMATION, *PRTL_USER_PROCESS_INFORMATION; + typedef enum _SHUTDOWN_ACTION { ShutdownNoReboot, ShutdownReboot, -- 2.6.4