mirror of
https://github.com/reactos/reactos.git
synced 2024-10-04 00:13:57 +00:00
[ADVAPI32]
Implement LsaCreateAccount(), LsaOpenAccount() and LsaSetInformationPolicy(). svn path=/trunk/; revision=49164
This commit is contained in:
parent
c35d9e6039
commit
b560e7a480
|
@ -348,7 +348,7 @@
|
|||
@ stub LsaAddPrivilegesToAccount
|
||||
@ stub LsaClearAuditLog
|
||||
@ stdcall LsaClose(ptr)
|
||||
@ stub LsaCreateAccount
|
||||
@ stdcall LsaCreateAccount(ptr ptr long ptr)
|
||||
@ stub LsaCreateSecret
|
||||
@ stub LsaCreateTrustedDomain
|
||||
@ stdcall LsaCreateTrustedDomainEx(ptr ptr ptr long ptr)
|
||||
|
@ -377,8 +377,8 @@
|
|||
@ stdcall LsaLookupPrivilegeValue(ptr ptr ptr)
|
||||
@ stdcall LsaLookupSids(ptr long ptr ptr ptr)
|
||||
@ stdcall LsaNtStatusToWinError(long)
|
||||
@ stub LsaOpenAccount
|
||||
@ stdcall LsaOpenPolicy(long long long long)
|
||||
@ stdcall LsaOpenAccount(ptr ptr long ptr)
|
||||
@ stdcall LsaOpenPolicy(ptr ptr long ptr)
|
||||
@ stub LsaOpenPolicySce
|
||||
@ stub LsaOpenSecret
|
||||
@ stub LsaOpenTrustedDomain
|
||||
|
|
|
@ -155,6 +155,38 @@ LsaAddAccountRights(
|
|||
return STATUS_OBJECT_NAME_NOT_FOUND;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
NTSTATUS
|
||||
WINAPI
|
||||
LsaCreateAccount(IN LSA_HANDLE PolicyHandle,
|
||||
IN PSID AccountSid,
|
||||
IN ULONG Flags,
|
||||
IN OUT PLSA_HANDLE AccountHandle)
|
||||
{
|
||||
NTSTATUS Status;
|
||||
|
||||
TRACE("(%p,%p,0x%08x,%p)\n", PolicyHandle, AccountSid, Flags, AccountHandle);
|
||||
|
||||
RpcTryExcept
|
||||
{
|
||||
Status = LsarCreateAccount((LSAPR_HANDLE)PolicyHandle,
|
||||
AccountSid,
|
||||
Flags,
|
||||
AccountHandle);
|
||||
}
|
||||
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||
{
|
||||
Status = I_RpcMapWin32Status(RpcExceptionCode());
|
||||
}
|
||||
RpcEndExcept;
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
|
@ -500,6 +532,38 @@ LsaNtStatusToWinError(NTSTATUS Status)
|
|||
return RtlNtStatusToDosError(Status);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
NTSTATUS
|
||||
WINAPI
|
||||
LsaOpenAccount(IN LSA_HANDLE PolicyHandle,
|
||||
IN PSID AccountSid,
|
||||
IN ULONG Flags,
|
||||
IN OUT PLSA_HANDLE AccountHandle)
|
||||
{
|
||||
NTSTATUS Status;
|
||||
|
||||
TRACE("(%p,%p,0x%08x,%p)\n", PolicyHandle, AccountSid, Flags, AccountHandle);
|
||||
|
||||
RpcTryExcept
|
||||
{
|
||||
Status = LsarOpenAccount((LSAPR_HANDLE)PolicyHandle,
|
||||
AccountSid,
|
||||
Flags,
|
||||
AccountHandle);
|
||||
}
|
||||
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||
{
|
||||
Status = I_RpcMapWin32Status(RpcExceptionCode());
|
||||
}
|
||||
RpcEndExcept;
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
* LsaOpenPolicy
|
||||
*
|
||||
|
@ -701,20 +765,36 @@ LsaSetDomainInformationPolicy(
|
|||
return STATUS_UNSUCCESSFUL;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
* @implemented
|
||||
*/
|
||||
NTSTATUS
|
||||
WINAPI
|
||||
LsaSetInformationPolicy(
|
||||
LSA_HANDLE PolicyHandle,
|
||||
POLICY_INFORMATION_CLASS InformationClass,
|
||||
PVOID Buffer)
|
||||
LsaSetInformationPolicy(IN LSA_HANDLE PolicyHandle,
|
||||
IN POLICY_INFORMATION_CLASS InformationClass,
|
||||
IN PVOID Buffer)
|
||||
{
|
||||
FIXME("(%p,0x%08x,%p) stub\n", PolicyHandle, InformationClass, Buffer);
|
||||
return STATUS_UNSUCCESSFUL;
|
||||
NTSTATUS Status;
|
||||
|
||||
TRACE("(%p,0x%08x,%p)\n", PolicyHandle, InformationClass, Buffer);
|
||||
|
||||
RpcTryExcept
|
||||
{
|
||||
Status = LsarSetInformationPolicy((LSAPR_HANDLE)PolicyHandle,
|
||||
InformationClass,
|
||||
(PLSAPR_POLICY_INFORMATION)Buffer);
|
||||
}
|
||||
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||
{
|
||||
Status = I_RpcMapWin32Status(RpcExceptionCode());
|
||||
}
|
||||
RpcEndExcept;
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
|
|
|
@ -675,6 +675,7 @@ NTSTATUS NTAPI LsaCallAuthenticationPackage(HANDLE,ULONG,PVOID,ULONG,PVOID*,
|
|||
PULONG,PNTSTATUS);
|
||||
NTSTATUS NTAPI LsaClose(LSA_HANDLE);
|
||||
NTSTATUS NTAPI LsaConnectUntrusted(PHANDLE);
|
||||
NTSTATUS NTAPI LsaCreateAccount(LSA_HANDLE, PSID, ULONG, PLSA_HANDLE);
|
||||
NTSTATUS NTAPI LsaCreateTrustedDomainEx(LSA_HANDLE,
|
||||
PTRUSTED_DOMAIN_INFORMATION_EX,
|
||||
PTRUSTED_DOMAIN_AUTH_INFORMATION,ACCESS_MASK,
|
||||
|
@ -703,6 +704,7 @@ NTSTATUS NTAPI LsaLookupPrivilegeValue(LSA_HANDLE, PLSA_UNICODE_STRING, PLUID);
|
|||
NTSTATUS NTAPI LsaLookupSids(LSA_HANDLE,ULONG,PSID*,
|
||||
PLSA_REFERENCED_DOMAIN_LIST*,PLSA_TRANSLATED_NAME*);
|
||||
ULONG NTAPI LsaNtStatusToWinError(NTSTATUS);
|
||||
NTSTATUS NTAPI LsaOpenAccount(LSA_HANDLE, PSID, ULONG, PLSA_HANDLE);
|
||||
NTSTATUS NTAPI LsaOpenPolicy(PLSA_UNICODE_STRING,PLSA_OBJECT_ATTRIBUTES,
|
||||
ACCESS_MASK,PLSA_HANDLE);
|
||||
NTSTATUS NTAPI LsaQueryDomainInformationPolicy(LSA_HANDLE,
|
||||
|
|
Loading…
Reference in a new issue