Author: ekohl Date: Wed Sep 21 07:27:18 2016 New Revision: 72755 URL: http://svn.reactos.org/svn/reactos?rev=72755&view=rev Log: [LSASRV] Open/Create and set the \\SECURITY\\LSA_AUTHENTICATION_INITIALIZED event after the LsaAuthenticationPort has been created.
Modified: trunk/reactos/dll/win32/lsasrv/authport.c trunk/reactos/dll/win32/lsasrv/lsasrv.h Modified: trunk/reactos/dll/win32/lsasrv/authport.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/lsasrv/authport.c?rev=72755&r1=72754&r2=72755&view=diff ============================================================================== --- trunk/reactos/dll/win32/lsasrv/authport.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/lsasrv/authport.c [iso-8859-1] Wed Sep 21 07:27:18 2016 @@ -262,7 +262,11 @@ OBJECT_ATTRIBUTES ObjectAttributes; UNICODE_STRING PortName; DWORD ThreadId; + UNICODE_STRING EventName; + HANDLE EventHandle; NTSTATUS Status; + + TRACE("StartAuthenticationPort()\n"); /* Initialize the logon context list */ InitializeListHead(&LsapLogonContextList); @@ -283,7 +287,41 @@ sizeof(LSA_API_MSG) * 32); if (!NT_SUCCESS(Status)) { - TRACE("NtCreatePort() failed (Status %lx)\n", Status); + WARN("NtCreatePort() failed (Status %lx)\n", Status); + return Status; + } + + RtlInitUnicodeString(&EventName, + L"\\SECURITY\\LSA_AUTHENTICATION_INITIALIZED"); + InitializeObjectAttributes(&ObjectAttributes, + &EventName, + OBJ_CASE_INSENSITIVE | OBJ_PERMANENT, + NULL, + NULL); + Status = NtOpenEvent(&EventHandle, + EVENT_MODIFY_STATE, + &ObjectAttributes); + if (!NT_SUCCESS(Status)) + { + TRACE("NtOpenEvent failed (Status 0x%08lx)\n", Status); + + Status = NtCreateEvent(&EventHandle, + EVENT_MODIFY_STATE, + &ObjectAttributes, + NotificationEvent, + FALSE); + if (!NT_SUCCESS(Status)) + { + WARN("NtCreateEvent failed (Status 0x%08lx)\n", Status); + return Status; + } + } + + Status = NtSetEvent(EventHandle, NULL); + NtClose(EventHandle); + if (!NT_SUCCESS(Status)) + { + WARN("NtSetEvent failed (Status 0x%08lx)\n", Status); return Status; } Modified: trunk/reactos/dll/win32/lsasrv/lsasrv.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/lsasrv/lsasrv.h?rev=72755&r1=72754&r2=72755&view=diff ============================================================================== --- trunk/reactos/dll/win32/lsasrv/lsasrv.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/lsasrv/lsasrv.h [iso-8859-1] Wed Sep 21 07:27:18 2016 @@ -22,6 +22,7 @@ #define NTOS_MODE_USER #include <ndk/cmfuncs.h> +#include <ndk/exfuncs.h> #include <ndk/kefuncs.h> #include <ndk/mmfuncs.h> #include <ndk/obfuncs.h>