Skip to content
Snippets Groups Projects
Commit 0faaa315 authored by Jan Včelák's avatar Jan Včelák :rocket:
Browse files

knotd: remove forced stop from signal handler

The signals are blocked during server shutdown. Therefore the signal
handler could not be called twice.
parent 74736c77
No related branches found
No related tags found
No related merge requests found
......@@ -41,7 +41,6 @@
/* Signal flags. */
static volatile short sig_req_stop = 0;
static volatile short sig_req_reload = 0;
static volatile short sig_stopping = 0;
/* \brief Signal started state to the init system. */
static void init_signal_started(void)
......@@ -67,22 +66,22 @@ static void pid_cleanup(char *pidfile)
}
/*! \brief SIGINT signal handler. */
void interrupt_handle(int s)
static void interrupt_handle(int signum)
{
/* Reload configuration. */
if (s == SIGHUP) {
switch (signum) {
case SIGHUP:
sig_req_reload = 1;
return;
break;
case SIGINT:
case SIGTERM:
sig_req_stop = 1;
break;
default:
/* ignore */
break;
}
}
/* Stop server. */
if (s == SIGINT || s == SIGTERM) {
if (sig_stopping == 0) {
sig_req_stop = 1;
sig_stopping = 1;
} else {
exit(1);
}
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment