mirror of
https://github.com/reactos/reactos.git
synced 2024-12-30 19:14:31 +00:00
Implement LsaEnumerateAccountRights.
svn path=/trunk/; revision=45484
This commit is contained in:
parent
5786bc7b81
commit
e2214c16ef
2 changed files with 40 additions and 8 deletions
|
@ -217,7 +217,7 @@ LsaDeleteTrustedDomain(
|
|||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
* @implemented
|
||||
*/
|
||||
NTSTATUS
|
||||
WINAPI
|
||||
|
@ -227,10 +227,35 @@ LsaEnumerateAccountRights(
|
|||
PLSA_UNICODE_STRING *UserRights,
|
||||
PULONG CountOfRights)
|
||||
{
|
||||
FIXME("(%p,%p,%p,%p) stub\n", PolicyHandle, AccountSid, UserRights, CountOfRights);
|
||||
*UserRights = 0;
|
||||
*CountOfRights = 0;
|
||||
return STATUS_OBJECT_NAME_NOT_FOUND;
|
||||
LSAPR_USER_RIGHT_SET UserRightsSet;
|
||||
NTSTATUS Status;
|
||||
|
||||
TRACE("(%p,%p,%p,%p) stub\n", PolicyHandle, AccountSid, UserRights, CountOfRights);
|
||||
|
||||
UserRightsSet.Entries = 0;
|
||||
UserRightsSet.UserRights = NULL;
|
||||
|
||||
RpcTryExcept
|
||||
{
|
||||
Status = LsarEnmuerateAccountRights((LSAPR_HANDLE)PolicyHandle,
|
||||
AccountSid,
|
||||
&UserRightsSet);
|
||||
|
||||
*CountOfRights = UserRightsSet.Entries;
|
||||
*UserRights = (PUNICODE_STRING)UserRightsSet.UserRights;
|
||||
}
|
||||
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||
{
|
||||
Status = I_RpcMapWin32Status(RpcExceptionCode());
|
||||
|
||||
if (UserRightsSet.UserRights != NULL)
|
||||
{
|
||||
MIDL_user_free(UserRightsSet.UserRights);
|
||||
}
|
||||
}
|
||||
RpcEndExcept;
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -288,7 +313,8 @@ LsaEnumerateTrustedDomainsEx(
|
|||
/*
|
||||
* @implemented
|
||||
*/
|
||||
NTSTATUS WINAPI
|
||||
NTSTATUS
|
||||
WINAPI
|
||||
LsaFreeMemory(PVOID Buffer)
|
||||
{
|
||||
TRACE("(%p)\n", Buffer);
|
||||
|
|
|
@ -560,8 +560,14 @@ NTSTATUS LsarEnmuerateAccountRights(
|
|||
PRPC_SID AccountSid,
|
||||
PLSAPR_USER_RIGHT_SET UserRights)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return STATUS_NOT_IMPLEMENTED;
|
||||
FIXME("(%p,%p,%p) stub\n", PolicyHandle, AccountSid, UserRights);
|
||||
|
||||
if (!LsapValidateDbHandle(PolicyHandle))
|
||||
return STATUS_INVALID_HANDLE;
|
||||
|
||||
UserRights->Entries = 0;
|
||||
UserRights->UserRights = NULL;
|
||||
return STATUS_OBJECT_NAME_NOT_FOUND;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue