[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
This commit is contained in:
Alex Ionescu 2012-02-16 20:08:34 +00:00
parent d221bdfbb1
commit 63d6bdc644
3 changed files with 10 additions and 4 deletions

View file

@ -783,11 +783,11 @@ CsrParseServerCommandLine(IN ULONG ArgumentCount,
return Status; return Status;
} }
/* Load us */ /* Hackito ergo sum */
BasepFakeStaticServerData(); BasepFakeStaticServerData();
#if 0
/* Load us */
Status = CsrLoadServerDll("CSRSS", NULL, CSR_SRV_SERVER); Status = CsrLoadServerDll("CSRSS", NULL, CSR_SRV_SERVER);
#endif
} }
else if (!_stricmp(ParameterName, "ServerDLL")) else if (!_stricmp(ParameterName, "ServerDLL"))
{ {

View file

@ -71,7 +71,7 @@ CsrServerDllInitialization(IN PCSR_SERVER_DLL LoadedServerDll)
{ {
/* Setup the DLL Object */ /* Setup the DLL Object */
LoadedServerDll->ApiBase = 0; LoadedServerDll->ApiBase = 0;
LoadedServerDll->HighestApiSupported = 5; LoadedServerDll->HighestApiSupported = CsrpMaxApiNumber;
LoadedServerDll->DispatchTable = CsrServerApiDispatchTable; LoadedServerDll->DispatchTable = CsrServerApiDispatchTable;
LoadedServerDll->ValidTable = CsrServerApiServerValidTable; LoadedServerDll->ValidTable = CsrServerApiServerValidTable;
LoadedServerDll->NameTable = CsrServerApiNameTable; LoadedServerDll->NameTable = CsrServerApiNameTable;

View file

@ -385,6 +385,12 @@ CsrSrvSetPriorityClass(
IN OUT PULONG Reply IN OUT PULONG Reply
); );
NTSTATUS
NTAPI
CsrLoadServerDll(IN PCHAR DllString,
IN PCHAR EntryPoint OPTIONAL,
IN ULONG ServerId);
/* api/user.c */ /* api/user.c */
CSR_API(CsrRegisterServicesProcess); CSR_API(CsrRegisterServicesProcess);