Module: wine Branch: master Commit: 1593bdf9a61c90a8bf7d6f6486156cd6129b9a02 URL: http://source.winehq.org/git/wine.git/?a=commit;h=1593bdf9a61c90a8bf7d6f6486...
Author: Ričardas Barkauskas rbarkauskas@codeweavers.com Date: Tue Jan 22 23:53:55 2013 +0200
advapi32: Partially implement CreateProcessWithTokenW.
---
dlls/advapi32/advapi32.spec | 2 +- dlls/advapi32/security.c | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletions(-)
diff --git a/dlls/advapi32/advapi32.spec b/dlls/advapi32/advapi32.spec index 38342dc..027d9d2 100644 --- a/dlls/advapi32/advapi32.spec +++ b/dlls/advapi32/advapi32.spec @@ -126,7 +126,7 @@ # @ stub CreateProcessAsUserSecure @ stdcall CreateProcessAsUserW(long wstr wstr ptr ptr long long ptr wstr ptr ptr) @ stdcall CreateProcessWithLogonW(wstr wstr wstr long wstr wstr long ptr wstr ptr ptr) -# @ stub CreateProcessWithTokenW +@ stdcall CreateProcessWithTokenW(long long wstr wstr long ptr wstr ptr ptr) @ stdcall CreateRestrictedToken(long long long ptr long ptr long ptr ptr) @ stdcall CreateServiceA(long str str long long long long str str ptr str str str) @ stdcall CreateServiceW(long wstr wstr long long long long wstr wstr ptr wstr wstr wstr) diff --git a/dlls/advapi32/security.c b/dlls/advapi32/security.c index 8e2f39c..6da7331 100644 --- a/dlls/advapi32/security.c +++ b/dlls/advapi32/security.c @@ -5275,6 +5275,20 @@ BOOL WINAPI CreateProcessWithLogonW( LPCWSTR lpUsername, LPCWSTR lpDomain, LPCWS return FALSE; }
+BOOL WINAPI CreateProcessWithTokenW(HANDLE token, DWORD logon_flags, LPCWSTR application_name, LPWSTR command_line, + DWORD creation_flags, void *environment, LPCWSTR current_directory, STARTUPINFOW *startup_info, + PROCESS_INFORMATION *process_information ) +{ + FIXME("%p 0x%08x %s %s 0x%08x %p %s %p %p - semi-stub\n", token, + logon_flags, debugstr_w(application_name), debugstr_w(command_line), + creation_flags, environment, debugstr_w(current_directory), + startup_info, process_information); + + /* FIXME: check if handles should be inherited */ + return CreateProcessW( application_name, command_line, NULL, NULL, FALSE, creation_flags, environment, + current_directory, startup_info, process_information ); +} + /****************************************************************************** * DuplicateTokenEx [ADVAPI32.@] */