From 7f0e6df88345c1154f19fd263966ad20c73f5d52 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sun, 4 Jul 2010 16:28:13 +0200 Subject: s3: Pass the new server_id through reinit_after_fork --- source3/smbd/process.c | 3 ++- source3/smbd/server.c | 10 +++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) (limited to 'source3/smbd') diff --git a/source3/smbd/process.c b/source3/smbd/process.c index 8c2060df1a..b0bae927b9 100644 --- a/source3/smbd/process.c +++ b/source3/smbd/process.c @@ -2807,7 +2807,8 @@ static bool fork_echo_handler(struct smbd_server_connection *sconn) close(listener_pipe[0]); status = reinit_after_fork(smbd_messaging_context(), - smbd_event_context(), false); + smbd_event_context(), + procid_self(), false); if (!NT_STATUS_IS_OK(status)) { DEBUG(1, ("reinit_after_fork failed: %s\n", nt_errstr(status))); diff --git a/source3/smbd/server.c b/source3/smbd/server.c index a1250790ce..f30d761865 100644 --- a/source3/smbd/server.c +++ b/source3/smbd/server.c @@ -409,7 +409,8 @@ static void smbd_accept_connection(struct tevent_context *ev, s = NULL; status = reinit_after_fork(smbd_messaging_context(), - smbd_event_context(), true); + smbd_event_context(), procid_self(), + true); if (!NT_STATUS_IS_OK(status)) { if (NT_STATUS_EQUAL(status, NT_STATUS_TOO_MANY_OPENED_FILES)) { @@ -806,6 +807,7 @@ extern void build_options(bool screen); }; struct smbd_parent_context *parent = NULL; TALLOC_CTX *frame = talloc_stackframe(); /* Setup tos. */ + NTSTATUS status; smbd_init_globals(); @@ -998,8 +1000,10 @@ extern void build_options(bool screen); if (is_daemon) pidfile_create("smbd"); - if (!NT_STATUS_IS_OK(reinit_after_fork(smbd_messaging_context(), - smbd_event_context(), false))) { + status = reinit_after_fork(smbd_messaging_context(), + smbd_event_context(), + procid_self(), false); + if (!NT_STATUS_IS_OK(status)) { DEBUG(0,("reinit_after_fork() failed\n")); exit(1); } -- cgit