From 63d6bdc6442f98bc76c869137292f0261e42218d Mon Sep 17 00:00:00 2001 From: Alex Ionescu Date: Thu, 16 Feb 2012 20:08:34 +0000 Subject: [PATCH] [CSRSRV]: Make CSRSRV "load" its own DLL as it should. This lets it support CSRSRV native APIs from NTDLL (which we don't send yet). svn path=/trunk/; revision=55648 --- reactos/subsystems/win32/csrss/csrsrv/init.c | 6 +++--- reactos/subsystems/win32/csrss/csrsrv/server.c | 2 +- reactos/subsystems/win32/csrss/include/api.h | 6 ++++++ 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/reactos/subsystems/win32/csrss/csrsrv/init.c b/reactos/subsystems/win32/csrss/csrsrv/init.c index 690395c50fc..0305854446d 100644 --- a/reactos/subsystems/win32/csrss/csrsrv/init.c +++ b/reactos/subsystems/win32/csrss/csrsrv/init.c @@ -783,11 +783,11 @@ CsrParseServerCommandLine(IN ULONG ArgumentCount, return Status; } - /* Load us */ + /* Hackito ergo sum */ BasepFakeStaticServerData(); - #if 0 + + /* Load us */ Status = CsrLoadServerDll("CSRSS", NULL, CSR_SRV_SERVER); - #endif } else if (!_stricmp(ParameterName, "ServerDLL")) { diff --git a/reactos/subsystems/win32/csrss/csrsrv/server.c b/reactos/subsystems/win32/csrss/csrsrv/server.c index ffea5c705bc..6b8f3ac95de 100644 --- a/reactos/subsystems/win32/csrss/csrsrv/server.c +++ b/reactos/subsystems/win32/csrss/csrsrv/server.c @@ -71,7 +71,7 @@ CsrServerDllInitialization(IN PCSR_SERVER_DLL LoadedServerDll) { /* Setup the DLL Object */ LoadedServerDll->ApiBase = 0; - LoadedServerDll->HighestApiSupported = 5; + LoadedServerDll->HighestApiSupported = CsrpMaxApiNumber; LoadedServerDll->DispatchTable = CsrServerApiDispatchTable; LoadedServerDll->ValidTable = CsrServerApiServerValidTable; LoadedServerDll->NameTable = CsrServerApiNameTable; diff --git a/reactos/subsystems/win32/csrss/include/api.h b/reactos/subsystems/win32/csrss/include/api.h index edde6419de8..0dc8be9b0da 100644 --- a/reactos/subsystems/win32/csrss/include/api.h +++ b/reactos/subsystems/win32/csrss/include/api.h @@ -385,6 +385,12 @@ CsrSrvSetPriorityClass( IN OUT PULONG Reply ); +NTSTATUS +NTAPI +CsrLoadServerDll(IN PCHAR DllString, + IN PCHAR EntryPoint OPTIONAL, + IN ULONG ServerId); + /* api/user.c */ CSR_API(CsrRegisterServicesProcess);