mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 08:55:19 +00:00
[MSGINA]
Revert r61888. CORE-7824. svn path=/trunk/; revision=61895
This commit is contained in:
parent
26ed6933ab
commit
c10bfd3da9
3 changed files with 29 additions and 51 deletions
|
@ -259,6 +259,9 @@ DoChangePassword(
|
|||
ULONG RequestBufferSize;
|
||||
ULONG ResponseBufferSize = 0;
|
||||
LPWSTR Ptr;
|
||||
LSA_STRING PackageName;
|
||||
HANDLE LsaHandle = NULL;
|
||||
ULONG AuthenticationPackage = 0;
|
||||
BOOL res = FALSE;
|
||||
NTSTATUS ProtocolStatus;
|
||||
NTSTATUS Status;
|
||||
|
@ -345,9 +348,30 @@ DoChangePassword(
|
|||
NewPassword1,
|
||||
RequestBuffer->NewPassword.MaximumLength);
|
||||
|
||||
/* Connect to the LSA server */
|
||||
Status = LsaConnectUntrusted(&LsaHandle);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
ERR("LsaConnectUntrusted failed (Status 0x%08lx)\n", Status);
|
||||
goto done;
|
||||
}
|
||||
|
||||
/* Get the authentication package */
|
||||
RtlInitAnsiString((PANSI_STRING)&PackageName,
|
||||
MSV1_0_PACKAGE_NAME);
|
||||
|
||||
Status = LsaLookupAuthenticationPackage(LsaHandle,
|
||||
&PackageName,
|
||||
&AuthenticationPackage);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
ERR("LsaLookupAuthenticationPackage failed (Status 0x%08lx)\n", Status);
|
||||
goto done;
|
||||
}
|
||||
|
||||
/* Call the authentication package */
|
||||
Status = LsaCallAuthenticationPackage(pgContext->LsaHandle,
|
||||
pgContext->AuthenticationPackage,
|
||||
Status = LsaCallAuthenticationPackage(LsaHandle,
|
||||
AuthenticationPackage,
|
||||
RequestBuffer,
|
||||
RequestBufferSize,
|
||||
(PVOID*)&ResponseBuffer,
|
||||
|
@ -380,6 +404,9 @@ done:
|
|||
if (ResponseBuffer != NULL)
|
||||
LsaFreeReturnBuffer(ResponseBuffer);
|
||||
|
||||
if (LsaHandle != NULL)
|
||||
NtClose(LsaHandle);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
|
|
|
@ -254,46 +254,6 @@ GetRegistrySettings(PGINA_CONTEXT pgContext)
|
|||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
ConnectToLsa(
|
||||
PGINA_CONTEXT pgContext)
|
||||
{
|
||||
LSA_STRING LogonProcessName;
|
||||
LSA_STRING PackageName;
|
||||
LSA_OPERATIONAL_MODE SecurityMode = 0;
|
||||
NTSTATUS Status;
|
||||
|
||||
/* Connect to the LSA server */
|
||||
RtlInitAnsiString((PANSI_STRING)&LogonProcessName,
|
||||
"MSGINA");
|
||||
|
||||
Status = LsaRegisterLogonProcess(&LogonProcessName,
|
||||
&pgContext->LsaHandle,
|
||||
&SecurityMode);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
ERR("LsaRegisterLogonProcess failed (Status 0x%08lx)\n", Status);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* Get the authentication package */
|
||||
RtlInitAnsiString((PANSI_STRING)&PackageName,
|
||||
MSV1_0_PACKAGE_NAME);
|
||||
|
||||
Status = LsaLookupAuthenticationPackage(pgContext->LsaHandle,
|
||||
&PackageName,
|
||||
&pgContext->AuthenticationPackage);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
ERR("LsaLookupAuthenticationPackage failed (Status 0x%08lx)\n", Status);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -323,13 +283,6 @@ WlxInitialize(
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
if (!ConnectToLsa(pgContext))
|
||||
{
|
||||
WARN("ConnectToLsa() failed\n");
|
||||
LocalFree(pgContext);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* Return the context to winlogon */
|
||||
*pWlxContext = (PVOID)pgContext;
|
||||
pgContext->hDllInstance = hDllInstance;
|
||||
|
|
|
@ -38,8 +38,6 @@ typedef struct
|
|||
PWLX_DISPATCH_VERSION_1_3 pWlxFuncs;
|
||||
HANDLE hDllInstance;
|
||||
HWND hStatusWindow;
|
||||
HANDLE LsaHandle;
|
||||
ULONG AuthenticationPackage;
|
||||
DWORD AutoLogonState;
|
||||
BOOL bDisableCAD;
|
||||
BOOL bAutoAdminLogon;
|
||||
|
|
Loading…
Reference in a new issue