diff options
author | Andrew Tridgell <tridge@samba.org> | 2010-11-15 10:12:22 +1100 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2010-11-15 10:19:34 +1100 |
commit | ef7f4a142068757dcf0dc11c5b7cf03755be45a8 (patch) | |
tree | d8e56b44df249b52da8d913f92293ac39d45be35 /source4/winbind | |
parent | ec590fc9e37c38891bdd10aaae5bac46f5e71f75 (diff) | |
download | samba-ef7f4a142068757dcf0dc11c5b7cf03755be45a8.tar.gz samba-ef7f4a142068757dcf0dc11c5b7cf03755be45a8.tar.bz2 samba-ef7f4a142068757dcf0dc11c5b7cf03755be45a8.zip |
s4-server: make server sockets a child of the task context
We previously allocated sockets as direct children of the event
context. That led to crashes if a service called
task_server_terminate(), as it left the socket open and handling
events for a dead protocol.
Making them a child of the task allows the task to terminate and take
all its sockets with it.
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/winbind')
-rw-r--r-- | source4/winbind/wb_server.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source4/winbind/wb_server.c b/source4/winbind/wb_server.c index 34d145d318..5390dab2f7 100644 --- a/source4/winbind/wb_server.c +++ b/source4/winbind/wb_server.c @@ -299,7 +299,7 @@ static void winbind_task_init(struct task_server *task) if (!listen_socket->socket_path) goto nomem; listen_socket->service = service; listen_socket->privileged = false; - status = stream_setup_socket(task->event_ctx, task->lp_ctx, model_ops, + status = stream_setup_socket(task, task->event_ctx, task->lp_ctx, model_ops, &wbsrv_ops, "unix", listen_socket->socket_path, &port, lpcfg_socket_options(task->lp_ctx), @@ -316,7 +316,7 @@ static void winbind_task_init(struct task_server *task) if (!listen_socket->socket_path) goto nomem; listen_socket->service = service; listen_socket->privileged = true; - status = stream_setup_socket(task->event_ctx, task->lp_ctx, model_ops, + status = stream_setup_socket(task, task->event_ctx, task->lp_ctx, model_ops, &wbsrv_ops, "unix", listen_socket->socket_path, &port, lpcfg_socket_options(task->lp_ctx), |