mirror of
https://github.com/reactos/reactos.git
synced 2025-08-02 21:56:06 +00:00
[ADVAPI32]
Implement LsaQueryInfoTrustedDomain() and LsaQueryTrustedDomainInfo(). svn path=/trunk/; revision=73548
This commit is contained in:
parent
eb31df80a7
commit
50a627eb56
1 changed files with 52 additions and 6 deletions
|
@ -1423,7 +1423,7 @@ LsaQueryForestTrustInformation(IN LSA_HANDLE PolicyHandle,
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @unimplemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
WINAPI
|
WINAPI
|
||||||
|
@ -1431,9 +1431,35 @@ LsaQueryInfoTrustedDomain(IN LSA_HANDLE TrustedDomainHandle,
|
||||||
IN TRUSTED_INFORMATION_CLASS InformationClass,
|
IN TRUSTED_INFORMATION_CLASS InformationClass,
|
||||||
OUT PVOID *Buffer)
|
OUT PVOID *Buffer)
|
||||||
{
|
{
|
||||||
FIXME("LsaQueryInfoTrustedDomain(%p %d %p) stub\n",
|
PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation = NULL;
|
||||||
|
NTSTATUS Status;
|
||||||
|
|
||||||
|
TRACE("LsaQueryInfoTrustedDomain(%p %d %p) stub\n",
|
||||||
TrustedDomainHandle, InformationClass, Buffer);
|
TrustedDomainHandle, InformationClass, Buffer);
|
||||||
return STATUS_NOT_IMPLEMENTED;
|
|
||||||
|
if (InformationClass == TrustedDomainAuthInformationInternal ||
|
||||||
|
InformationClass == TrustedDomainFullInformationInternal)
|
||||||
|
return STATUS_INVALID_INFO_CLASS;
|
||||||
|
|
||||||
|
RpcTryExcept
|
||||||
|
{
|
||||||
|
Status = LsarQueryInfoTrustedDomain((LSAPR_HANDLE)TrustedDomainHandle,
|
||||||
|
InformationClass,
|
||||||
|
&TrustedDomainInformation);
|
||||||
|
*Buffer = TrustedDomainInformation;
|
||||||
|
}
|
||||||
|
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||||
|
{
|
||||||
|
if (TrustedDomainInformation != NULL)
|
||||||
|
MIDL_user_free(TrustedDomainInformation);
|
||||||
|
|
||||||
|
Status = I_RpcMapWin32Status(RpcExceptionCode());
|
||||||
|
}
|
||||||
|
RpcEndExcept;
|
||||||
|
|
||||||
|
TRACE("Done (Status: 0x%08x)\n", Status);
|
||||||
|
|
||||||
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1643,7 +1669,7 @@ LsaQuerySecurityObject(IN LSA_HANDLE ObjectHandle,
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @unimplemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
WINAPI
|
WINAPI
|
||||||
|
@ -1652,9 +1678,29 @@ LsaQueryTrustedDomainInfo(IN LSA_HANDLE PolicyHandle,
|
||||||
IN TRUSTED_INFORMATION_CLASS InformationClass,
|
IN TRUSTED_INFORMATION_CLASS InformationClass,
|
||||||
OUT PVOID *Buffer)
|
OUT PVOID *Buffer)
|
||||||
{
|
{
|
||||||
FIXME("LsaQueryTrustedDomainInfo(%p %p %d %p) stub\n",
|
NTSTATUS Status;
|
||||||
|
|
||||||
|
TRACE("LsaQueryTrustedDomainInfo(%p %p %d %p) stub\n",
|
||||||
PolicyHandle, TrustedDomainSid, InformationClass, Buffer);
|
PolicyHandle, TrustedDomainSid, InformationClass, Buffer);
|
||||||
return STATUS_OBJECT_NAME_NOT_FOUND;
|
|
||||||
|
if (InformationClass == TrustedDomainAuthInformationInternal ||
|
||||||
|
InformationClass == TrustedDomainFullInformationInternal)
|
||||||
|
return STATUS_INVALID_INFO_CLASS;
|
||||||
|
|
||||||
|
RpcTryExcept
|
||||||
|
{
|
||||||
|
Status = LsarQueryTrustedDomainInfo((LSAPR_HANDLE)PolicyHandle,
|
||||||
|
(PRPC_SID)TrustedDomainSid,
|
||||||
|
InformationClass,
|
||||||
|
(PLSAPR_TRUSTED_DOMAIN_INFO *)Buffer);
|
||||||
|
}
|
||||||
|
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||||
|
{
|
||||||
|
Status = I_RpcMapWin32Status(RpcExceptionCode());
|
||||||
|
}
|
||||||
|
RpcEndExcept;
|
||||||
|
|
||||||
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue