summaryrefslogtreecommitdiffstats
path: root/source3/smbd/server.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd/server.c')
-rw-r--r--source3/smbd/server.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index 184b613810d..a7297d68630 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -50,7 +50,12 @@ int get_client_fd(void)
struct event_context *smbd_event_context(void)
{
if (!smbd_event_ctx) {
- smbd_event_ctx = event_context_init(talloc_autofree_context());
+ /*
+ * Note we MUST use the NULL context here, not the
+ * autofree context, to avoid side effects in forked
+ * children exiting.
+ */
+ smbd_event_ctx = event_context_init(NULL);
}
if (!smbd_event_ctx) {
smb_panic("Could not init smbd event context");