samba: Only use async signal-safe functions in signal handler
authorVolker Lendecke <vl@samba.org>
Thu, 4 Jan 2018 20:06:02 +0000 (21:06 +0100)
committerJeremy Allison <jra@samba.org>
Fri, 5 Jan 2018 23:07:17 +0000 (00:07 +0100)
Otherwise shutdown can hang

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
source4/smbd/server.c

index f650d80e87309d5a89d9c7b00424f0cfad455f69..adee3887d98fdf723d2913debee73d76e80d9235 100644 (file)
@@ -133,12 +133,10 @@ static void sig_term(int sig)
                 * We're the process group leader, send
                 * SIGTERM to our process group.
                 */
-               DBG_ERR("SIGTERM: killing children\n");
                kill(-getpgrp(), SIGTERM);
        }
 #endif
-       DBG_ERR("Exiting pid %d on SIGTERM\n", (int)getpid());
-       exit(127);
+       _exit(127);
 }
 
 static void sigterm_signal_handler(struct tevent_context *ev,