Author: ion Date: Tue Sep 10 08:55:09 2013 New Revision: 60001
URL: http://svn.reactos.org/svn/reactos?rev=60001&view=rev Log: [CSRSRV]: Update CSR_SERVER_DLL definition to Server 2003 instead of XP. Get rid of the whole initialization event stuff. This should make Windows CSRSS+CSRSRV work with our BASESRV. Thanks to Hermes for discovering there was a structure issue.
Modified: trunk/reactos/include/reactos/subsys/csr/csrsrv.h trunk/reactos/subsystems/win32/csrsrv/init.c trunk/reactos/subsystems/win32/csrsrv/server.c
Modified: trunk/reactos/include/reactos/subsys/csr/csrsrv.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/subsys/csr/... ============================================================================== --- trunk/reactos/include/reactos/subsys/csr/csrsrv.h [iso-8859-1] (original) +++ trunk/reactos/include/reactos/subsys/csr/csrsrv.h [iso-8859-1] Tue Sep 10 08:55:09 2013 @@ -208,7 +208,6 @@ typedef struct _CSR_SERVER_DLL { ULONG Length; - HANDLE Event; ANSI_STRING Name; HANDLE ServerHandle; ULONG ServerId; @@ -227,7 +226,7 @@ PCSR_SHUTDOWNPROCESS_CALLBACK ShutdownProcessCallback; ULONG Unknown2[3]; } CSR_SERVER_DLL, *PCSR_SERVER_DLL; - +C_ASSERT(FIELD_OFFSET(CSR_SERVER_DLL, SharedSection) == 0x3C);
typedef NTSTATUS
Modified: trunk/reactos/subsystems/win32/csrsrv/init.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/csrsrv/ini... ============================================================================== --- trunk/reactos/subsystems/win32/csrsrv/init.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/csrsrv/init.c [iso-8859-1] Tue Sep 10 08:55:09 2013 @@ -32,7 +32,6 @@ HANDLE BNOLinksDirectory; HANDLE SessionObjectDirectory; HANDLE DosDevicesDirectory; -HANDLE CsrInitializationEvent; SYSTEM_BASIC_INFORMATION CsrNtSysInfo;
@@ -963,19 +962,6 @@ { NTSTATUS Status = STATUS_SUCCESS;
- /* Create the Init Event */ - Status = NtCreateEvent(&CsrInitializationEvent, - EVENT_ALL_ACCESS, - NULL, - SynchronizationEvent, - FALSE); - if (!NT_SUCCESS(Status)) - { - DPRINT1("CSRSRV:%s: NtCreateEvent failed (Status=%08lx)\n", - __FUNCTION__, Status); - return Status; - } - /* Cache System Basic Information so we don't always request it */ Status = NtQuerySystemInformation(SystemBasicInformation, &CsrNtSysInfo, @@ -1065,18 +1051,6 @@ __FUNCTION__, Status); return Status; } - - /* Finito! Signal the event */ - Status = NtSetEvent(CsrInitializationEvent, NULL); - if (!NT_SUCCESS(Status)) - { - DPRINT1("CSRSRV:%s: NtSetEvent failed (Status=%08lx)\n", - __FUNCTION__, Status); - return Status; - } - - /* Close the event handle now */ - NtClose(CsrInitializationEvent);
/* Have us handle Hard Errors */ Status = NtSetDefaultHardErrorPort(CsrApiPort);
Modified: trunk/reactos/subsystems/win32/csrsrv/server.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/csrsrv/ser... ============================================================================== --- trunk/reactos/subsystems/win32/csrsrv/server.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/csrsrv/server.c [iso-8859-1] Tue Sep 10 08:55:09 2013 @@ -168,7 +168,6 @@ /* Set up the Object */ ServerDll->Length = Size; ServerDll->SharedSection = CsrSrvSharedSectionHeap; // Send to the server dll our shared heap pointer. - ServerDll->Event = CsrInitializationEvent; ServerDll->Name.Length = DllName.Length; ServerDll->Name.MaximumLength = DllName.MaximumLength; ServerDll->Name.Buffer = (PCHAR)(ServerDll + 1);