41 DPRINT1(
"LsaCallAuthenticationPackage()\n");
46 ApiMessage.
h.u2.ZeroInit = 0;
57 DPRINT1(
"ZwRequestWaitReplyPort() failed (Status 0x%08lx)\n",
Status);
63 DPRINT1(
"ZwRequestWaitReplyPort() failed (ApiMessage.Status 0x%08lx)\n", ApiMessage.
Status);
85 DPRINT(
"LsaDeregisterLogonProcess()\n");
90 ApiMessage.
h.u2.ZeroInit = 0;
97 DPRINT1(
"ZwRequestWaitReplyPort() failed (Status 0x%08lx)\n",
Status);
103 DPRINT1(
"ZwRequestWaitReplyPort() failed (ApiMessage.Status 0x%08lx)\n", ApiMessage.
Status);
109 DPRINT(
"LsaDeregisterLogonProcess() done (Status 0x%08lx)\n",
Status);
152 ApiMessage.
h.u2.ZeroInit = 0;
188 IN PVOID AuthenticationInformation,
205 ApiMessage.
h.u2.ZeroInit = 0;
210 ApiMessage.
LogonUser.
Request.AuthenticationInformation = AuthenticationInformation;
255 ULONG ConnectInfoLength =
sizeof(ConnectInfo);
262 DPRINT(
"LsaRegisterLogonProcess()\n");
270 L"\\SECURITY\\LSA_AUTHENTICATION_INITIALIZED");
281 DPRINT(
"ZwOpenEvent failed (Status 0x%08lx)\n",
Status);
301 DPRINT1(
"ZwWaitForSingleObject failed (Status 0x%08lx)\n",
Status);
307 L"\\LsaAuthenticationPort");
309 SecurityQos.
Length =
sizeof(SecurityQos);
315 LogonProcessName->Buffer,
316 LogonProcessName->Length);
317 ConnectInfo.
Length = LogonProcessName->Length;
340 DPRINT1(
"ConnectInfo.Status: 0x%08lx\n", ConnectInfo.
Status);
343 return ConnectInfo.
Status;
static UNICODE_STRING PortName
char * strncpy(char *DstString, const char *SrcString, ACPI_SIZE Count)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
#define NT_SUCCESS(StatCode)
ULONG AuthenticationPackage
#define OBJ_CASE_INSENSITIVE
VOID NTAPI ProtocolStatus(NDIS_HANDLE BindingContext, NDIS_STATUS GenerelStatus, PVOID StatusBuffer, UINT StatusBufferSize)
Called by NDIS when the underlying driver has changed state.
NTSYSAPI NTSTATUS NTAPI ZwRequestWaitReplyPort(_In_ HANDLE PortHandle, _Out_ PPORT_MESSAGE LpcReply, _In_ PPORT_MESSAGE LpcRequest)
NTSYSAPI NTSTATUS NTAPI ZwConnectPort(_Out_ PHANDLE PortHandle, _In_ PUNICODE_STRING PortName, _In_ PSECURITY_QUALITY_OF_SERVICE SecurityQos, _In_opt_ PPORT_VIEW ClientView, _In_opt_ PREMOTE_PORT_VIEW ServerView, _In_opt_ PULONG MaxMessageLength, _In_opt_ PVOID ConnectionInformation, _In_opt_ PULONG ConnectionInformationLength)
#define LSASS_MAX_PACKAGE_NAME_LENGTH
#define LSASS_MAX_LOGON_PROCESS_NAME_LENGTH
#define LSA_PORT_MESSAGE_SIZE
#define LSA_PORT_DATA_SIZE(c)
@ LSASS_REQUEST_LOGON_USER
@ LSASS_REQUEST_CALL_AUTHENTICATION_PACKAGE
@ LSASS_REQUEST_LOOKUP_AUTHENTICATION_PACKAGE
@ LSASS_REQUEST_DEREGISTER_LOGON_PROCESS
#define InitializeObjectAttributes(p, n, a, r, s)
NTSYSCALLAPI NTSTATUS NTAPI ZwOpenEvent(_Out_ PHANDLE EventHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define NtCurrentProcess()
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE LogonType
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS LocalGroups
_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 _Out_ PHANDLE _Out_ PQUOTA_LIMITS Quotas
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS _In_ PTOKEN_SOURCE SourceContext
_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 _Out_ PHANDLE _Out_ PQUOTA_LIMITS _Out_ PNTSTATUS SubStatus
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG AuthenticationInformationLength
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS _In_ PTOKEN_SOURCE _Out_ PVOID * ProfileBuffer
_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 ProfileBufferLength
_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
_IRQL_requires_same_ _In_ PLSA_STRING OriginName
NTSTATUS NTAPI LsaLogonUser(HANDLE, PLSA_STRING, SECURITY_LOGON_TYPE, ULONG, PVOID, ULONG, PTOKEN_GROUPS, PTOKEN_SOURCE, PVOID *, PULONG, PLUID, PHANDLE, PQUOTA_LIMITS, PNTSTATUS)
ULONG * PLSA_OPERATIONAL_MODE
NTSTATUS NTAPI LsaLookupAuthenticationPackage(HANDLE, PLSA_STRING, PULONG)
enum _SECURITY_LOGON_TYPE SECURITY_LOGON_TYPE
NTSTATUS NTAPI LsaFreeReturnBuffer(PVOID)
NTSTATUS NTAPI LsaRegisterLogonProcess(PLSA_STRING, PHANDLE, PLSA_OPERATIONAL_MODE)
#define STATUS_NAME_TOO_LONG
NTSTATUS NTAPI LsaDeregisterLogonProcess(IN HANDLE LsaHandle)
NTSTATUS NTAPI LsaCallAuthenticationPackage(IN HANDLE LsaHandle, IN ULONG AuthenticationPackage, IN PVOID ProtocolSubmitBuffer, IN ULONG SubmitBufferLength, OUT PVOID *ProtocolReturnBuffer, OUT PULONG ReturnBufferLength, OUT PNTSTATUS ProtocolStatus)
PULONG MinorVersion OPTIONAL
LSA_LOGON_USER_MSG LogonUser
LSA_DEREGISTER_LOGON_PROCESS_MSG DeregisterLogonProcess
LSA_CALL_AUTHENTICATION_PACKAGE_MSG CallAuthenticationPackage
LSA_LOOKUP_AUTHENTICATION_PACKAGE_MSG LookupAuthenticationPackage
struct _LSA_CALL_AUTHENTICATION_PACKAGE_MSG::@3491::@3494 Reply
struct _LSA_CALL_AUTHENTICATION_PACKAGE_MSG::@3491::@3493 Request
LSA_OPERATIONAL_MODE OperationalMode
CHAR LogonProcessNameBuffer[LSASS_MAX_LOGON_PROCESS_NAME_LENGTH+1]
struct _LSA_LOGON_USER_MSG::@3487::@3490 Reply
struct _LSA_LOGON_USER_MSG::@3487::@3489 Request
struct _LSA_LOOKUP_AUTHENTICATION_PACKAGE_MSG::@3499::@3502 Reply
struct _LSA_LOOKUP_AUTHENTICATION_PACKAGE_MSG::@3499::@3501 Request
SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
_Out_ PHANDLE EventHandle
#define SECURITY_DYNAMIC_TRACKING