summaryrefslogtreecommitdiff
path: root/source4/smbd
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-01-07 19:12:45 +1100
committerAndrew Tridgell <tridge@samba.org>2010-01-08 13:03:05 +1100
commit278d2f75baaaab1bb30910f0fd332731b4292a06 (patch)
tree45fa9b39e3fa389696479d34ff777250b2b17eb2 /source4/smbd
parent58032533620dc89dd093f55dabe003ec743f8dff (diff)
downloadsamba-278d2f75baaaab1bb30910f0fd332731b4292a06.tar.gz
samba-278d2f75baaaab1bb30910f0fd332731b4292a06.tar.bz2
samba-278d2f75baaaab1bb30910f0fd332731b4292a06.zip
s4-smbd: setup the default event contexts for other process models
Diffstat (limited to 'source4/smbd')
-rw-r--r--source4/smbd/process_prefork.c8
-rw-r--r--source4/smbd/process_standard.c6
2 files changed, 13 insertions, 1 deletions
diff --git a/source4/smbd/process_prefork.c b/source4/smbd/process_prefork.c
index f890a528d5..721856bb46 100644
--- a/source4/smbd/process_prefork.c
+++ b/source4/smbd/process_prefork.c
@@ -114,6 +114,9 @@ static void prefork_new_task(struct tevent_context *ev,
/* This is now the child code. We need a completely new event_context to work with */
ev2 = s4_event_context_init(NULL);
+ /* setup this as the default context */
+ s4_event_context_set_default(ev2);
+
/* the service has given us a private pointer that
encapsulates the context it needs for this new connection -
everything else will be freed */
@@ -171,7 +174,10 @@ static void prefork_new_task(struct tevent_context *ev,
/* But we need a events system to handle reaping children */
ev_parent = s4_event_context_init(NULL);
-
+
+ /* setup this as the default context */
+ s4_event_context_set_default(ev_parent);
+
/* TODO: Handle some events... */
/* we can't return to the top level here, as that event context is gone,
diff --git a/source4/smbd/process_standard.c b/source4/smbd/process_standard.c
index ab5ad5760c..145cbc0a2b 100644
--- a/source4/smbd/process_standard.c
+++ b/source4/smbd/process_standard.c
@@ -108,6 +108,9 @@ static void standard_accept_connection(struct tevent_context *ev,
/* This is now the child code. We need a completely new event_context to work with */
ev2 = s4_event_context_init(NULL);
+ /* setup this as the default context */
+ s4_event_context_set_default(ev2);
+
/* the service has given us a private pointer that
encapsulates the context it needs for this new connection -
everything else will be freed */
@@ -179,6 +182,9 @@ static void standard_new_task(struct tevent_context *ev,
/* This is now the child code. We need a completely new event_context to work with */
ev2 = s4_event_context_init(NULL);
+ /* setup this as the default context */
+ s4_event_context_set_default(ev2);
+
/* the service has given us a private pointer that
encapsulates the context it needs for this new connection -
everything else will be freed */