mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 17:05:46 +00:00
[ADVAPI32]
LogonUserW: Convert the logon type and pass it to LsaLogonUser. svn path=/trunk/; revision=61467
This commit is contained in:
parent
6926a951e6
commit
5661fc7c14
1 changed files with 29 additions and 4 deletions
|
@ -316,20 +316,45 @@ LogonUserW(LPWSTR lpszUsername,
|
|||
LUID LogonId = {0, 0};
|
||||
HANDLE TokenHandle = NULL;
|
||||
QUOTA_LIMITS QuotaLimits;
|
||||
SECURITY_LOGON_TYPE LogonType;
|
||||
NTSTATUS SubStatus = STATUS_SUCCESS;
|
||||
NTSTATUS Status;
|
||||
|
||||
*phToken = NULL;
|
||||
|
||||
switch (dwLogonType)
|
||||
{
|
||||
case LOGON32_LOGON_INTERACTIVE:
|
||||
LogonType = Interactive;
|
||||
break;
|
||||
|
||||
case LOGON32_LOGON_NETWORK:
|
||||
LogonType = Network;
|
||||
break;
|
||||
|
||||
case LOGON32_LOGON_BATCH:
|
||||
LogonType = Batch;
|
||||
break;
|
||||
|
||||
case LOGON32_LOGON_SERVICE:
|
||||
LogonType = Service;
|
||||
break;
|
||||
|
||||
default:
|
||||
ERR("Invalid logon type: %ul\n", dwLogonType);
|
||||
Status = STATUS_INVALID_PARAMETER;
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (LsaHandle == NULL)
|
||||
{
|
||||
Status = OpenLogonLsaHandle();
|
||||
if (!NT_SUCCESS(Status))
|
||||
return Status;
|
||||
goto done;
|
||||
}
|
||||
|
||||
RtlInitAnsiString((PANSI_STRING)&OriginName,
|
||||
"Testapp");
|
||||
"Advapi32 Logon");
|
||||
|
||||
RtlInitUnicodeString(&DomainName,
|
||||
lpszDomain);
|
||||
|
@ -443,7 +468,7 @@ LogonUserW(LPWSTR lpszUsername,
|
|||
|
||||
Status = LsaLogonUser(LsaHandle,
|
||||
&OriginName,
|
||||
Interactive,
|
||||
LogonType,
|
||||
AuthenticationPackage,
|
||||
(PVOID)AuthInfo,
|
||||
AuthInfoLength,
|
||||
|
@ -457,7 +482,7 @@ LogonUserW(LPWSTR lpszUsername,
|
|||
&SubStatus);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
TRACE("LsaLogonUser failed (Status 0x%08lx)\n", Status);
|
||||
ERR("LsaLogonUser failed (Status 0x%08lx)\n", Status);
|
||||
goto done;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue