57 ULONG ConnectInfoLength;
60 TRACE(
"LsapOpenLsaPort()\n");
66 L"\\LsaAuthenticationPort");
68 SecurityQos.
Length =
sizeof(SecurityQos);
90 TRACE(
"NtConnectPort failed (Status 0x%08lx)\n",
Status);
118 ULONG ConnectInfoLength =
sizeof(ConnectInfo);
130 L"\\SECURITY\\LSA_AUTHENTICATION_INITIALIZED");
141 WARN(
"NtOpenEvent failed (Status 0x%08lx)\n",
Status);
150 WARN(
"NtCreateEvent failed (Status 0x%08lx)\n",
Status);
161 ERR(
"NtWaitForSingleObject failed (Status 0x%08lx)\n",
Status);
167 L"\\LsaAuthenticationPort");
169 SecurityQos.
Length =
sizeof(SecurityQos);
190 ERR(
"NtConnectPort failed (Status 0x%08lx)\n",
Status);
196 ERR(
"ConnectInfo.Status: 0x%08lx\n", ConnectInfo.
Status);
199 return ConnectInfo.
Status;
210 PLUID *LogonSessionList)
215 TRACE(
"LsaEnumerateLogonSessions(%p %p)\n", LogonSessionCount, LogonSessionList);
224 ApiMessage.
h.u2.ZeroInit = 0;
231 ERR(
"NtRequestWaitReplyPort() failed (Status 0x%08lx)\n",
Status);
237 ERR(
"NtRequestWaitReplyPort() failed (ApiMessage.Status 0x%08lx)\n", ApiMessage.
Status);
261 TRACE(
"LsaGetLogonSessionData(%p %p)\n",
LogonId, ppLogonSessionData);
270 ApiMessage.
h.u2.ZeroInit = 0;
280 ERR(
"NtRequestWaitReplyPort() failed (Status 0x%08lx)\n",
Status);
286 ERR(
"NtRequestWaitReplyPort() failed (ApiMessage.Status 0x%08lx)\n", ApiMessage.
Status);
304 TRACE(
"Sid: %p\n", SessionData->
Sid);
320 *ppLogonSessionData = SessionData;
333 HANDLE NotificationEventHandle)
338 TRACE(
"LsaRegisterPolicyChangeNotification(%lu %p)\n",
348 ApiMessage.
h.u2.ZeroInit = 0;
359 ERR(
"NtRequestWaitReplyPort() failed (Status 0x%08lx)\n",
Status);
365 ERR(
"NtRequestWaitReplyPort() failed (ApiMessage.Status 0x%08lx)\n", ApiMessage.
Status);
380 HANDLE NotificationEventHandle)
385 TRACE(
"LsaUnregisterPolicyChangeNotification(%lu %p)\n",
395 ApiMessage.
h.u2.ZeroInit = 0;
406 ERR(
"NtRequestWaitReplyPort() failed (Status 0x%08lx)\n",
Status);
412 ERR(
"NtRequestWaitReplyPort() failed (ApiMessage.Status 0x%08lx)\n", ApiMessage.
Status);
static UNICODE_STRING PortName
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
#define NT_SUCCESS(StatCode)
_In_ FILTER_INFORMATION_CLASS InformationClass
#define OBJ_CASE_INSENSITIVE
NTSYSAPI void WINAPI RtlCopyLuid(PLUID, const LUID *)
NTSTATUS NTAPI LsaConnectUntrusted(OUT PHANDLE LsaHandle)
NTSTATUS NTAPI LsaGetLogonSessionData(PLUID LogonId, PSECURITY_LOGON_SESSION_DATA *ppLogonSessionData)
NTSTATUS NTAPI LsaEnumerateLogonSessions(PULONG LogonSessionCount, PLUID *LogonSessionList)
NTSTATUS NTAPI LsaRegisterPolicyChangeNotification(POLICY_NOTIFICATION_INFORMATION_CLASS InformationClass, HANDLE NotificationEventHandle)
NTSTATUS LsapOpenLsaPort(VOID)
NTSTATUS NTAPI LsaUnregisterPolicyChangeNotification(POLICY_NOTIFICATION_INFORMATION_CLASS InformationClass, HANDLE NotificationEventHandle)
VOID LsapInitLsaPort(VOID)
VOID LsapCloseLsaPort(VOID)
#define LSA_PORT_MESSAGE_SIZE
struct _LSA_CONNECTION_INFO LSA_CONNECTION_INFO
#define LSA_PORT_DATA_SIZE(c)
@ LSASS_REQUEST_ENUM_LOGON_SESSIONS
@ LSASS_REQUEST_POLICY_CHANGE_NOTIFY
@ LSASS_REQUEST_GET_LOGON_SESSION_DATA
#define InitializeObjectAttributes(p, n, a, r, s)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
NTSTATUS NTAPI NtClose(IN HANDLE Handle)
NTSYSAPI NTSTATUS NTAPI NtWaitForSingleObject(IN HANDLE hObject, IN BOOLEAN bAlertable, IN PLARGE_INTEGER Timeout)
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS _In_ PTOKEN_SOURCE _Out_ PVOID _Out_ PULONG _Inout_ PLUID LogonId
NTSTATUS NTAPI NtOpenEvent(OUT PHANDLE EventHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes)
NTSTATUS NTAPI NtCreateEvent(OUT PHANDLE EventHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN EVENT_TYPE EventType, IN BOOLEAN InitialState)
NTSTATUS NTAPI NtConnectPort(OUT PHANDLE PortHandle, IN PUNICODE_STRING PortName, IN PSECURITY_QUALITY_OF_SERVICE SecurityQos, IN OUT PPORT_VIEW ClientView OPTIONAL, IN OUT PREMOTE_PORT_VIEW ServerView OPTIONAL, OUT PULONG MaxMessageLength OPTIONAL, IN OUT PVOID ConnectionInformation OPTIONAL, IN OUT PULONG ConnectionInformationLength OPTIONAL)
NTSTATUS NTAPI NtRequestWaitReplyPort(IN HANDLE PortHandle, IN PPORT_MESSAGE LpcRequest, IN OUT PPORT_MESSAGE LpcReply)
enum _POLICY_NOTIFICATION_INFORMATION_CLASS POLICY_NOTIFICATION_INFORMATION_CLASS
LSA_ENUM_LOGON_SESSIONS_MSG EnumLogonSessions
LSA_POLICY_CHANGE_NOTIFY_MSG PolicyChangeNotify
LSA_GET_LOGON_SESSION_DATA_MSG GetLogonSessionData
struct _LSA_ENUM_LOGON_SESSIONS_MSG::@3508::@3511 Reply
struct _LSA_GET_LOGON_SESSION_DATA_MSG::@3512::@3514 Request
struct _LSA_GET_LOGON_SESSION_DATA_MSG::@3512::@3515 Reply
struct _LSA_POLICY_CHANGE_NOTIFY_MSG::@3516::@3518 Request
LSA_UNICODE_STRING DnsDomainName
LSA_UNICODE_STRING LogonDomain
LSA_UNICODE_STRING LogonServer
LSA_UNICODE_STRING UserName
LSA_UNICODE_STRING AuthenticationPackage
SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
#define RtlZeroMemory(Destination, Length)
_Out_ PHANDLE EventHandle
#define SECURITY_DYNAMIC_TRACKING