diff options
author | Volker Lendecke <vl@samba.org> | 2010-04-07 17:45:12 +0200 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2011-01-21 13:51:27 +0100 |
commit | 9c2fcb689b647be60731ea8ce8abfe22c0e63dde (patch) | |
tree | 3107f4efd36a8c79271dd2367098959876f7f8eb /source3/winbindd/wb_lookupname.c | |
parent | 7a2fa9fc1cf5b26419c9cd915e85030c7f14e764 (diff) | |
download | samba-9c2fcb689b647be60731ea8ce8abfe22c0e63dde.tar.gz samba-9c2fcb689b647be60731ea8ce8abfe22c0e63dde.tar.xz samba-9c2fcb689b647be60731ea8ce8abfe22c0e63dde.zip |
s3:winbind: Fork multiple children per domain
This makes us scale better with many simultaneous winbind requests,
some of which might be slow.
This implementation breaks offline logons, as the cached credentials are
maintained in a child (this needs fixing). So, if the offline logons are
active, only allow one DC connection.
Probably the offline logon and the scalable file server cases are
separate enough so that this patch is useful even with the restriction.
Diffstat (limited to 'source3/winbindd/wb_lookupname.c')
-rw-r--r-- | source3/winbindd/wb_lookupname.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source3/winbindd/wb_lookupname.c b/source3/winbindd/wb_lookupname.c index 4429149f7a9..a9b4dfa586d 100644 --- a/source3/winbindd/wb_lookupname.c +++ b/source3/winbindd/wb_lookupname.c @@ -70,7 +70,8 @@ struct tevent_req *wb_lookupname_send(TALLOC_CTX *mem_ctx, } subreq = dcerpc_wbint_LookupName_send( - state, ev, domain->child.binding_handle, state->dom_name, state->name, + state, ev, dom_child_handle(domain), + state->dom_name, state->name, flags, &state->type, &state->sid); if (tevent_req_nomem(subreq, req)) { return tevent_req_post(req, ev); @@ -111,7 +112,8 @@ static void wb_lookupname_done(struct tevent_req *subreq) } subreq = dcerpc_wbint_LookupName_send( - state, state->ev, root_domain->child.binding_handle, state->dom_name, + state, state->ev, dom_child_handle(root_domain), + state->dom_name, state->name, state->flags, &state->type, &state->sid); if (tevent_req_nomem(subreq, req)) { return; |