diff options
Diffstat (limited to 'source3/winbindd/winbindd_dual.c')
-rw-r--r-- | source3/winbindd/winbindd_dual.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/source3/winbindd/winbindd_dual.c b/source3/winbindd/winbindd_dual.c index c320e96746..1385c76bae 100644 --- a/source3/winbindd/winbindd_dual.c +++ b/source3/winbindd/winbindd_dual.c @@ -1160,6 +1160,12 @@ bool winbindd_reinit_after_fork(const char *logfilename) reopen_logs(); } + if (!winbindd_setup_sig_term_handler(false)) + return false; + if (!winbindd_setup_sig_hup_handler(override_logfile ? NULL : + logfilename)) + return false; + /* Don't handle the same messages as our parent. */ messaging_deregister(winbind_messaging_context(), MSG_SMB_CONF_UPDATED, NULL); @@ -1379,11 +1385,6 @@ static bool fork_domain_child(struct winbindd_child *child) struct timeval now; TALLOC_CTX *frame = talloc_stackframe(); - /* check for signals */ - winbind_check_sigterm(false); - winbind_check_sighup(override_logfile ? NULL : - child->logfilename); - if (run_events(winbind_event_context(), 0, NULL, NULL)) { TALLOC_FREE(frame); continue; |