From 2cd76b0931582463a6e72df227f3e100dfb00f84 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Mon, 10 Oct 2011 15:42:57 +0200 Subject: [PATCH] libcli/cldap: pass tevent_context to cldap_netlogon_send() metze --- libcli/cldap/cldap.c | 7 ++++--- libcli/cldap/cldap.h | 1 + source3/nmbd/nmbd_processlogon.c | 2 +- source4/libcli/finddcs_cldap.c | 3 ++- source4/libnet/libnet_become_dc.c | 3 ++- source4/libnet/libnet_unbecome_dc.c | 3 ++- source4/torture/ldap/cldapbench.c | 3 ++- 7 files changed, 14 insertions(+), 8 deletions(-) diff --git a/libcli/cldap/cldap.c b/libcli/cldap/cldap.c index 7436bea4073..c73d37466c0 100644 --- a/libcli/cldap/cldap.c +++ b/libcli/cldap/cldap.c @@ -841,8 +841,9 @@ static void cldap_netlogon_state_done(struct tevent_req *subreq); queue a cldap netlogon for send */ struct tevent_req *cldap_netlogon_send(TALLOC_CTX *mem_ctx, - struct cldap_socket *cldap, - const struct cldap_netlogon *io) + struct tevent_context *ev, + struct cldap_socket *cldap, + const struct cldap_netlogon *io) { struct tevent_req *req, *subreq; struct cldap_netlogon_state *state; @@ -1023,7 +1024,7 @@ NTSTATUS cldap_netlogon(struct cldap_socket *cldap, return NT_STATUS_PIPE_BUSY; } - req = cldap_netlogon_send(mem_ctx, cldap, io); + req = cldap_netlogon_send(mem_ctx, cldap->event.ctx, cldap, io); NT_STATUS_HAVE_NO_MEMORY(req); if (!tevent_req_poll(req, cldap->event.ctx)) { diff --git a/libcli/cldap/cldap.h b/libcli/cldap/cldap.h index 0098da521a7..bf259e9aa5a 100644 --- a/libcli/cldap/cldap.h +++ b/libcli/cldap/cldap.h @@ -114,6 +114,7 @@ struct cldap_netlogon { }; struct tevent_req *cldap_netlogon_send(TALLOC_CTX *mem_ctx, + struct tevent_context *ev, struct cldap_socket *cldap, const struct cldap_netlogon *io); NTSTATUS cldap_netlogon_recv(struct tevent_req *req, diff --git a/source3/nmbd/nmbd_processlogon.c b/source3/nmbd/nmbd_processlogon.c index 2adc81d76e1..f00a8d8e16c 100644 --- a/source3/nmbd/nmbd_processlogon.c +++ b/source3/nmbd/nmbd_processlogon.c @@ -249,7 +249,7 @@ static void nmbd_proxy_logon(struct nmbd_proxy_logon_context *ctx, state->io.in.version = nt_version; state->io.in.map_response = false; - subreq = cldap_netlogon_send(state, + subreq = cldap_netlogon_send(state, nmbd_event_context(), ctx->cldap_sock, &state->io); if (!subreq) { diff --git a/source4/libcli/finddcs_cldap.c b/source4/libcli/finddcs_cldap.c index 293641b37fe..ee5278f051a 100644 --- a/source4/libcli/finddcs_cldap.c +++ b/source4/libcli/finddcs_cldap.c @@ -234,7 +234,8 @@ static void finddcs_cldap_next_server(struct finddcs_cldap_state *state) DEBUG(4,("finddcs: performing CLDAP query on %s\n", state->netlogon->in.dest_address)); - subreq = cldap_netlogon_send(state, state->cldap, state->netlogon); + subreq = cldap_netlogon_send(state, state->ev, + state->cldap, state->netlogon); if (tevent_req_nomem(subreq, state->req)) { return; } diff --git a/source4/libnet/libnet_become_dc.c b/source4/libnet/libnet_become_dc.c index 34ca97c2747..6f70f32903c 100644 --- a/source4/libnet/libnet_become_dc.c +++ b/source4/libnet/libnet_become_dc.c @@ -777,7 +777,8 @@ static void becomeDC_send_cldap(struct libnet_BecomeDC_state *s) NULL, dest_address, &s->cldap.sock); if (!composite_is_ok(c)) return; - req = cldap_netlogon_send(s, s->cldap.sock, &s->cldap.io); + req = cldap_netlogon_send(s, s->libnet->event_ctx, + s->cldap.sock, &s->cldap.io); if (composite_nomem(req, c)) return; tevent_req_set_callback(req, becomeDC_recv_cldap, s); } diff --git a/source4/libnet/libnet_unbecome_dc.c b/source4/libnet/libnet_unbecome_dc.c index 85d47a91f92..be28907b5ba 100644 --- a/source4/libnet/libnet_unbecome_dc.c +++ b/source4/libnet/libnet_unbecome_dc.c @@ -285,7 +285,8 @@ static void unbecomeDC_send_cldap(struct libnet_UnbecomeDC_state *s) NULL, dest_address, &s->cldap.sock); if (!composite_is_ok(c)) return; - req = cldap_netlogon_send(s, s->cldap.sock, &s->cldap.io); + req = cldap_netlogon_send(s, s->libnet->event_ctx, + s->cldap.sock, &s->cldap.io); if (composite_nomem(req, c)) return; tevent_req_set_callback(req, unbecomeDC_recv_cldap, s); } diff --git a/source4/torture/ldap/cldapbench.c b/source4/torture/ldap/cldapbench.c index 7d02a2580b1..118881d0349 100644 --- a/source4/torture/ldap/cldapbench.c +++ b/source4/torture/ldap/cldapbench.c @@ -87,7 +87,8 @@ static bool bench_cldap_netlogon(struct torture_context *tctx, const char *addre while (timeval_elapsed(&tv) < timelimit) { while (num_sent - (state->pass_count+state->fail_count) < 10) { struct tevent_req *req; - req = cldap_netlogon_send(state, cldap, &search); + req = cldap_netlogon_send(state, tctx->ev, + cldap, &search); tevent_req_set_callback(req, request_netlogon_handler, state); -- 2.34.1