mirror of
https://github.com/samba-team/samba.git
synced 2025-07-29 15:42:04 +03:00
Remove unused marshalling for SAMR_ENUM_DOM_USERS.
Guenther
(This used to be commit 4521f31a72
)
This commit is contained in:
@ -64,92 +64,6 @@ NTSTATUS rpccli_samr_query_userinfo(struct rpc_pipe_client *cli,
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Enumerate domain users
|
||||
*
|
||||
* @param cli client state structure
|
||||
* @param mem_ctx talloc context
|
||||
* @param pol opened domain policy handle
|
||||
* @param start_idx starting index of enumeration, returns context for
|
||||
next enumeration
|
||||
* @param acb_mask account control bit mask (to enumerate some particular
|
||||
* kind of accounts)
|
||||
* @param size max acceptable size of response
|
||||
* @param dom_users returned array of domain user names
|
||||
* @param rids returned array of domain user RIDs
|
||||
* @param num_dom_users numer returned entries
|
||||
*
|
||||
* @return NTSTATUS returned in rpc response
|
||||
**/
|
||||
|
||||
NTSTATUS rpccli_samr_enum_dom_users(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
|
||||
POLICY_HND *pol, uint32 *start_idx, uint32 acb_mask,
|
||||
uint32 size, char ***dom_users, uint32 **rids,
|
||||
uint32 *num_dom_users)
|
||||
{
|
||||
prs_struct qbuf;
|
||||
prs_struct rbuf;
|
||||
SAMR_Q_ENUM_DOM_USERS q;
|
||||
SAMR_R_ENUM_DOM_USERS r;
|
||||
NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
|
||||
int i;
|
||||
|
||||
DEBUG(10,("cli_samr_enum_dom_users starting at index %u\n", (unsigned int)*start_idx));
|
||||
|
||||
ZERO_STRUCT(q);
|
||||
ZERO_STRUCT(r);
|
||||
|
||||
/* always init this */
|
||||
*num_dom_users = 0;
|
||||
|
||||
/* Fill query structure with parameters */
|
||||
|
||||
init_samr_q_enum_dom_users(&q, pol, *start_idx, acb_mask, size);
|
||||
|
||||
CLI_DO_RPC(cli, mem_ctx, PI_SAMR, SAMR_ENUM_DOM_USERS,
|
||||
q, r,
|
||||
qbuf, rbuf,
|
||||
samr_io_q_enum_dom_users,
|
||||
samr_io_r_enum_dom_users,
|
||||
NT_STATUS_UNSUCCESSFUL);
|
||||
|
||||
result = r.status;
|
||||
|
||||
if (!NT_STATUS_IS_OK(result) &&
|
||||
NT_STATUS_V(result) != NT_STATUS_V(STATUS_MORE_ENTRIES))
|
||||
goto done;
|
||||
|
||||
*start_idx = r.next_idx;
|
||||
*num_dom_users = r.num_entries2;
|
||||
|
||||
if (r.num_entries2) {
|
||||
/* allocate memory needed to return received data */
|
||||
*rids = TALLOC_ARRAY(mem_ctx, uint32, r.num_entries2);
|
||||
if (!*rids) {
|
||||
DEBUG(0, ("Error in cli_samr_enum_dom_users(): out of memory\n"));
|
||||
return NT_STATUS_NO_MEMORY;
|
||||
}
|
||||
|
||||
*dom_users = TALLOC_ARRAY(mem_ctx, char*, r.num_entries2);
|
||||
if (!*dom_users) {
|
||||
DEBUG(0, ("Error in cli_samr_enum_dom_users(): out of memory\n"));
|
||||
return NT_STATUS_NO_MEMORY;
|
||||
}
|
||||
|
||||
/* fill output buffers with rpc response */
|
||||
for (i = 0; i < r.num_entries2; i++) {
|
||||
fstring conv_buf;
|
||||
|
||||
(*rids)[i] = r.sam[i].rid;
|
||||
unistr2_to_ascii(conv_buf, &(r.uni_acct_name[i]), sizeof(conv_buf));
|
||||
(*dom_users)[i] = talloc_strdup(mem_ctx, conv_buf);
|
||||
}
|
||||
}
|
||||
|
||||
done:
|
||||
return result;
|
||||
}
|
||||
|
||||
/* Enumerate domain groups */
|
||||
|
||||
NTSTATUS rpccli_samr_enum_dom_groups(struct rpc_pipe_client *cli,
|
||||
|
Reference in New Issue
Block a user