diff options
author | Stefan Metzmacher <metze@samba.org> | 2008-04-15 01:01:59 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2008-04-18 14:43:08 +0200 |
commit | f2067658df3c272c2e8c6f2d00bcc5687050ee1d (patch) | |
tree | 91640e94afe0579542cf273c39080d87fc655f11 /source3/smbd | |
parent | 49bf9d35cd7fd87830ee2240e00919bd1bf3a1df (diff) | |
download | samba-f2067658df3c272c2e8c6f2d00bcc5687050ee1d.tar.gz samba-f2067658df3c272c2e8c6f2d00bcc5687050ee1d.tar.bz2 samba-f2067658df3c272c2e8c6f2d00bcc5687050ee1d.zip |
smbd: call reinit_after_fork() in the needed places
metze
(This used to be commit 425b3513a45cf98b53235470a3536be86d56d1c2)
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/server.c | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/source3/smbd/server.c b/source3/smbd/server.c index 108a55033c..337026a8ca 100644 --- a/source3/smbd/server.c +++ b/source3/smbd/server.c @@ -741,17 +741,9 @@ static bool open_sockets_smbd(bool is_daemon, bool interactive, const char *smb_ sizeof(remaddr)), false); - /* Reset the state of the random - * number generation system, so - * children do not get the same random - * numbers as each other */ - - set_need_random_reseed(); - /* tdb needs special fork handling - remove - * CLEAR_IF_FIRST flags */ - if (tdb_reopen_all(1) == -1) { - DEBUG(0,("tdb_reopen_all failed.\n")); - smb_panic("tdb_reopen_all failed"); + if (!reinit_after_fork(smbd_messaging_context())) { + DEBUG(0,("reinit_after_fork() failed\n")); + smb_panic("reinit_after_fork() failed"); } return True; @@ -1384,12 +1376,10 @@ extern void build_options(bool screen); /* Setup aio signal handler. */ initialize_async_io_handler(); - /* - * For clustering, we need to re-init our ctdbd connection after the - * fork - */ - if (!NT_STATUS_IS_OK(messaging_reinit(smbd_messaging_context()))) + if (!reinit_after_fork(smbd_messaging_context())) { + DEBUG(0,("reinit_after_fork() failed\n")); exit(1); + } /* register our message handlers */ messaging_register(smbd_messaging_context(), NULL, |