summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian E. Hopps <chopps@chopps.org>2019-09-27 13:52:50 -0400
committerAndrew Yourtchenko <ayourtch@gmail.com>2020-08-12 11:16:27 +0000
commitc9563e60fec8964a63ffe2542883eece66e616d0 (patch)
tree9bbe3c75a66f60ad56bf481d6a841d2a184d1eb9
parentc7e6b50fddca4f4d4580ba433a7c260372a27e00 (diff)
misc: don't os_exit(1) causing core on SIGINT
It's not typical for a program to core when it receives a SIGINT, so keep this from happening. Type: fix Signed-off-by: Christian E. Hopps <chopps@chopps.org> Change-Id: I2c15985a57e6ea898ff05c4001e4b30b41154eba (cherry picked from commit 10a8bda37eed33ada1e7c6ece7bda1fe066ba541)
-rwxr-xr-xsrc/vlib/unix/main.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/vlib/unix/main.c b/src/vlib/unix/main.c
index 9bfdab1efee..22971816593 100755
--- a/src/vlib/unix/main.c
+++ b/src/vlib/unix/main.c
@@ -180,7 +180,11 @@ unix_signal_handler (int signum, siginfo_t * si, ucontext_t * uc)
/* have to remove SIGABRT to avoid recursive - os_exit calling abort() */
unsetup_signal_handlers (SIGABRT);
- os_exit (1);
+ /* os_exit(1) causes core generation, do not do this for SIGINT */
+ if (signum == SIGINT)
+ os_exit (0);
+ else
+ os_exit (1);
}
else
clib_warning ("%s", syslog_msg);