diff options
author | Stefan Metzmacher <metze@samba.org> | 2014-06-11 03:06:00 +0200 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2014-08-06 09:51:12 +0200 |
commit | 77b40fd72e38af675744ba8e36aba612bcdd9ea4 (patch) | |
tree | 43962e08809a84c9ac69688b330265a7be223500 | |
parent | c5ab9557a9b30234b4ebb5aac3d591b402cffc97 (diff) | |
download | samba-77b40fd72e38af675744ba8e36aba612bcdd9ea4.tar.gz samba-77b40fd72e38af675744ba8e36aba612bcdd9ea4.tar.xz samba-77b40fd72e38af675744ba8e36aba612bcdd9ea4.zip |
s3:smbd: pass smbXsrv_connection to smbd_register_ips()
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
-rw-r--r-- | source3/smbd/process.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/source3/smbd/process.c b/source3/smbd/process.c index d249898f28..b8baa42f03 100644 --- a/source3/smbd/process.c +++ b/source3/smbd/process.c @@ -2575,7 +2575,7 @@ static void smbd_server_echo_handler(struct tevent_context *ev, } struct smbd_release_ip_state { - struct smbd_server_connection *sconn; + struct smbXsrv_connection *xconn; struct tevent_immediate *im; char addr[INET6_ADDRSTRLEN]; }; @@ -2587,7 +2587,8 @@ static void smbd_release_ip_immediate(struct tevent_context *ctx, struct smbd_release_ip_state *state = talloc_get_type_abort(private_data, struct smbd_release_ip_state); - struct smbXsrv_connection *xconn = state->sconn->conn; + struct smbXsrv_connection *xconn = state->xconn; + struct smbd_server_connection *sconn = xconn->sconn; if (!NT_STATUS_EQUAL(xconn->transport.status, NT_STATUS_ADDRESS_CLOSED)) { /* @@ -2596,7 +2597,7 @@ static void smbd_release_ip_immediate(struct tevent_context *ctx, return; } - smbd_server_connection_terminate(state->sconn, "CTDB_SRVID_RELEASE_IP"); + smbd_server_connection_terminate(sconn, "CTDB_SRVID_RELEASE_IP"); } /**************************************************************************** @@ -2607,7 +2608,7 @@ static bool release_ip(const char *ip, void *priv) struct smbd_release_ip_state *state = talloc_get_type_abort(priv, struct smbd_release_ip_state); - struct smbXsrv_connection *xconn = state->sconn->conn; + struct smbXsrv_connection *xconn = state->xconn; const char *addr = state->addr; const char *p = addr; @@ -2647,7 +2648,7 @@ static bool release_ip(const char *ip, void *priv) * as we might be called from within ctdbd_migrate(), * we need to defer our action to the next event loop */ - tevent_schedule_immediate(state->im, state->sconn->ev_ctx, + tevent_schedule_immediate(state->im, xconn->ev_ctx, smbd_release_ip_immediate, state); /* @@ -2660,7 +2661,7 @@ static bool release_ip(const char *ip, void *priv) return false; } -static NTSTATUS smbd_register_ips(struct smbd_server_connection *sconn, +static NTSTATUS smbd_register_ips(struct smbXsrv_connection *xconn, struct sockaddr_storage *srv, struct sockaddr_storage *clnt) { @@ -2672,11 +2673,11 @@ static NTSTATUS smbd_register_ips(struct smbd_server_connection *sconn, return NT_STATUS_NO_MEMORY; } - state = talloc_zero(sconn, struct smbd_release_ip_state); + state = talloc_zero(xconn, struct smbd_release_ip_state); if (state == NULL) { return NT_STATUS_NO_MEMORY; } - state->sconn = sconn; + state->xconn = xconn; state->im = tevent_create_immediate(state); if (state->im == NULL) { return NT_STATUS_NO_MEMORY; @@ -3832,7 +3833,7 @@ void smbd_process(struct tevent_context *ev_ctx, */ NTSTATUS status; - status = smbd_register_ips(sconn, &ss_srv, &ss_clnt); + status = smbd_register_ips(xconn, &ss_srv, &ss_clnt); if (!NT_STATUS_IS_OK(status)) { DEBUG(0, ("ctdbd_register_ips failed: %s\n", nt_errstr(status))); |