req, struct wb_sids2xids_state);
struct lsa_RefDomainList *domains = NULL;
struct lsa_TransNameArray *names = NULL;
- struct winbindd_child *child;
+ struct dcerpc_binding_handle *child_binding_handle = NULL;
NTSTATUS status;
int i;
TALLOC_FREE(names);
TALLOC_FREE(domains);
- child = idmap_child();
+ child_binding_handle = idmap_child_handle();
state->dom_ids = wb_sids2xids_extract_for_domain_index(
state, &state->ids, state->dom_index);
};
subreq = dcerpc_wbint_Sids2UnixIDs_send(
- state, state->ev, child->binding_handle, &state->idmap_dom,
+ state, state->ev, child_binding_handle, &state->idmap_dom,
state->dom_ids);
if (tevent_req_nomem(subreq, req)) {
return;
{
struct tevent_req *req, *subreq;
struct winbindd_allocate_gid_state *state;
- struct winbindd_child *child;
+ struct dcerpc_binding_handle *child_binding_handle = NULL;
req = tevent_req_create(mem_ctx, &state,
struct winbindd_allocate_gid_state);
DEBUG(3, ("allocate_gid\n"));
- child = idmap_child();
+ child_binding_handle = idmap_child_handle();
- subreq = dcerpc_wbint_AllocateGid_send(state, ev, child->binding_handle,
+ subreq = dcerpc_wbint_AllocateGid_send(state, ev, child_binding_handle,
&state->gid);
if (tevent_req_nomem(subreq, req)) {
return tevent_req_post(req, ev);
{
struct tevent_req *req, *subreq;
struct winbindd_allocate_uid_state *state;
- struct winbindd_child *child;
+ struct dcerpc_binding_handle *child_binding_handle = NULL;
req = tevent_req_create(mem_ctx, &state,
struct winbindd_allocate_uid_state);
DEBUG(3, ("allocate_uid\n"));
- child = idmap_child();
+ child_binding_handle = idmap_child_handle();
- subreq = dcerpc_wbint_AllocateUid_send(state, ev, child->binding_handle,
+ subreq = dcerpc_wbint_AllocateUid_send(state, ev, child_binding_handle,
&state->uid);
if (tevent_req_nomem(subreq, req)) {
return tevent_req_post(req, ev);
return &static_idmap_child;
}
+struct dcerpc_binding_handle *idmap_child_handle(void)
+{
+ return static_idmap_child.binding_handle;
+}
+
static const struct winbindd_child_dispatch_table idmap_dispatch_table[] = {
{
.name = "PING",
void init_idmap_child(void);
struct winbindd_child *idmap_child(void);
+struct dcerpc_binding_handle *idmap_child_handle(void);
struct idmap_domain *idmap_find_domain_with_sid(const char *domname,
const struct dom_sid *sid);
const char *idmap_config_const_string(const char *domname, const char *option,