From c39b0d17f2846c99af0b6f8d42be08afee0134dc Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Thu, 4 Oct 2012 19:19:36 +0200 Subject: [PATCH] MINOR: signal: really ignore signals configured with no handler Until now, signals configured with no handler were still enabled and ignored upon signal reception. Until now it was not an issue but with SSL causing many EPIPE all the time, it becomes obvious that signal processing comes with a cost. So set the handler to SIG_IGN when the function is NULL. --- src/signal.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/signal.c b/src/signal.c index 128a3838f..e1f5a8373 100644 --- a/src/signal.c +++ b/src/signal.c @@ -144,7 +144,7 @@ struct sig_handler *signal_register_fct(int sig, void (*fct)(struct sig_handler return NULL; if (sig) - signal(sig, signal_handler); + signal(sig, fct ? signal_handler : SIG_IGN); if (!fct) return NULL;