From c6370906bebab2dba8faa7bc8eb245f6a6cbcb10 Mon Sep 17 00:00:00 2001 From: Alex 'AdUser' Z Date: Mon, 28 Mar 2016 21:51:29 +1000 Subject: [PATCH] * merge signal handlers --- src/main.c | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/src/main.c b/src/main.c index cda3ae7..59c6767 100644 --- a/src/main.c +++ b/src/main.c @@ -33,15 +33,20 @@ struct { enum { stop = 0, run, reconfig, test } state = run; -void sa_term(int signum) { - UNUSED(signum); - f2b_log_msg(log_info, "got SIGTERM/SIGINT, exiting"); - state = stop; -} -void sa_hup(int signum) { - UNUSED(signum); - f2b_log_msg(log_note, "got SIGHUP, reloading config"); - state = reconfig; +void signal_handler(int signum) { + switch (signum) { + case SIGTERM: + case SIGINT: + f2b_log_msg(log_info, "got SIGTERM/SIGINT, exiting"); + state = stop; + break; + case SIGHUP: + f2b_log_msg(log_note, "got SIGHUP, reloading config"); + state = reconfig; + break; + default: + break; + } } #define SA_REGISTER(SIGNUM, HANDLER) \ @@ -139,9 +144,9 @@ int main(int argc, char *argv[]) { } } - SA_REGISTER(SIGTERM, &sa_term); - SA_REGISTER(SIGINT, &sa_term); - SA_REGISTER(SIGHUP, &sa_hup); + SA_REGISTER(SIGTERM, &signal_handler); + SA_REGISTER(SIGINT, &signal_handler); + SA_REGISTER(SIGHUP, &signal_handler); if (opts.config_path[0] == '\0') usage(EXIT_FAILURE);