- Implement SamGetDisplayEnumerationIndex.
- Add DOMAIN_DISPLAY_INFORMATION to ntsam.h and update sam.idl.

svn path=/trunk/; revision=59588
This commit is contained in:
Eric Kohl 2013-07-27 14:06:53 +00:00
parent ff619fd63b
commit d3e871ccdf
4 changed files with 54 additions and 2 deletions

View file

@ -870,6 +870,39 @@ SamGetCompatibilityMode(IN SAM_HANDLE ObjectHandle,
}
NTSTATUS
NTAPI
SamGetDisplayEnumerationIndex(IN SAM_HANDLE DomainHandle,
IN DOMAIN_DISPLAY_INFORMATION DisplayInformation,
IN PUNICODE_STRING Prefix,
OUT PULONG Index)
{
NTSTATUS Status;
TRACE("(%p %lu %wZ %p)\n",
DomainHandle, DisplayInformation, Prefix, Index);
if ((Prefix == NULL) ||
(Index == NULL))
return STATUS_INVALID_PARAMETER;
RpcTryExcept
{
Status = SamrGetDisplayEnumerationIndex2((SAMPR_HANDLE)DomainHandle,
DisplayInformation,
(PRPC_UNICODE_STRING)Prefix,
Index);
}
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
{
Status = I_RpcMapWin32Status(RpcExceptionCode());
}
RpcEndExcept;
return Status;
}
NTSTATUS
NTAPI
SamGetGroupsForUser(IN SAM_HANDLE UserHandle,

View file

@ -21,7 +21,7 @@
@ stdcall SamFreeMemory(ptr)
@ stdcall SamGetAliasMembership(ptr long ptr ptr ptr)
@ stdcall SamGetCompatibilityMode(ptr ptr)
@ stub SamGetDisplayEnumerationIndex
@ stdcall SamGetDisplayEnumerationIndex(ptr long ptr ptr)
@ stdcall SamGetGroupsForUser(ptr ptr ptr)
@ stdcall SamGetMembersInAlias(ptr ptr ptr)
@ stdcall SamGetMembersInGroup(ptr ptr ptr ptr)

View file

@ -298,6 +298,15 @@ typedef struct _ALIAS_ADM_COMMENT_INFORMATION
UNICODE_STRING AdminComment;
} ALIAS_ADM_COMMENT_INFORMATION, *PALIAS_ADM_COMMENT_INFORMATION;
typedef enum _DOMAIN_DISPLAY_INFORMATION
{
DomainDisplayUser = 1,
DomainDisplayMachine,
DomainDisplayGroup,
DomainDisplayOemUser,
DomainDisplayOemGroup,
DomainDisplayServer
} DOMAIN_DISPLAY_INFORMATION, *PDOMAIN_DISPLAY_INFORMATION;
typedef enum _DOMAIN_INFORMATION_CLASS
{
@ -816,6 +825,13 @@ NTAPI
SamGetCompatibilityMode(IN SAM_HANDLE ObjectHandle,
OUT PULONG Mode);
NTSTATUS
NTAPI
SamGetDisplayEnumerationIndex(IN SAM_HANDLE DomainHandle,
IN DOMAIN_DISPLAY_INFORMATION DisplayInformation,
IN PUNICODE_STRING Prefix,
OUT PULONG Index);
NTSTATUS
NTAPI
SamGetGroupsForUser(IN SAM_HANDLE UserHandle,

View file

@ -275,14 +275,17 @@ typedef [switch_type(DOMAIN_INFORMATION_CLASS)] union _SAMPR_DOMAIN_INFO_BUFFER
[case(DomainModifiedInformation2)] DOMAIN_MODIFIED_INFORMATION2 Modified2;
} SAMPR_DOMAIN_INFO_BUFFER, *PSAMPR_DOMAIN_INFO_BUFFER;
cpp_quote("#ifndef _NTSAM_")
typedef enum _DOMAIN_DISPLAY_INFORMATION
{
DomainDisplayUser = 1,
DomainDisplayMachine,
DomainDisplayGroup,
DomainDisplayOemUser,
DomainDisplayOemGroup
DomainDisplayOemGroup,
DomainDisplayServer
} DOMAIN_DISPLAY_INFORMATION, *PDOMAIN_DISPLAY_INFORMATION;
cpp_quote("#endif")
typedef struct _SAMPR_DOMAIN_DISPLAY_USER
{