Loading pkgs/by-name/sr/srelay/package.nix +4 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,10 @@ stdenv.mkDerivation (finalAttrs: { sha256 = "1sn6005aqyfvrlkm5445cyyaj6h6wfyskfncfmds55x34hfyxpvl"; }; patches = [ ./arm.patch ]; patches = [ ./arm.patch ./signal-handler.patch ]; buildInputs = [ libxcrypt ]; Loading pkgs/by-name/sr/srelay/signal-handler.patch 0 → 100644 +44 −0 Original line number Diff line number Diff line diff --git a/main.c b/main.c index 00d1cf3..3526cfd 100644 --- a/main.c +++ b/main.c @@ -675,7 +675,7 @@ int main(int argc, char **argv) msg_out(warn, "cannot open pidfile %s", pidfile); } - setsignal(SIGHUP, reload); + setsignal(SIGHUP, do_sighup); setsignal(SIGINT, SIG_IGN); setsignal(SIGQUIT, SIG_IGN); setsignal(SIGILL, SIG_IGN); @@ -690,7 +690,7 @@ int main(int argc, char **argv) setsignal(SIGSYS, SIG_IGN); setsignal(SIGPIPE, SIG_IGN); setsignal(SIGALRM, SIG_IGN); - setsignal(SIGTERM, cleanup); + setsignal(SIGTERM, do_sigterm); setsignal(SIGUSR1, SIG_IGN); setsignal(SIGUSR2, SIG_IGN); #ifdef SIGPOLL @@ -737,7 +737,7 @@ int main(int argc, char **argv) } } else { #endif - setsignal(SIGCHLD, reapchild); + setsignal(SIGCHLD, do_sigchld); setregid(-1, PROCGID); setreuid(-1, PROCUID); msg_out(norm, "Starting: MAX_CH(%d)", max_child); diff --git a/srelay.h b/srelay.h index 3e4d5e7..35010f0 100644 --- a/srelay.h +++ b/srelay.h @@ -366,7 +366,7 @@ struct user_pass { }; #ifndef SIGFUNC_DEFINED -typedef void (*sigfunc_t)(); +typedef void (*sigfunc_t)(int); #endif #ifndef MAX Loading
pkgs/by-name/sr/srelay/package.nix +4 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,10 @@ stdenv.mkDerivation (finalAttrs: { sha256 = "1sn6005aqyfvrlkm5445cyyaj6h6wfyskfncfmds55x34hfyxpvl"; }; patches = [ ./arm.patch ]; patches = [ ./arm.patch ./signal-handler.patch ]; buildInputs = [ libxcrypt ]; Loading
pkgs/by-name/sr/srelay/signal-handler.patch 0 → 100644 +44 −0 Original line number Diff line number Diff line diff --git a/main.c b/main.c index 00d1cf3..3526cfd 100644 --- a/main.c +++ b/main.c @@ -675,7 +675,7 @@ int main(int argc, char **argv) msg_out(warn, "cannot open pidfile %s", pidfile); } - setsignal(SIGHUP, reload); + setsignal(SIGHUP, do_sighup); setsignal(SIGINT, SIG_IGN); setsignal(SIGQUIT, SIG_IGN); setsignal(SIGILL, SIG_IGN); @@ -690,7 +690,7 @@ int main(int argc, char **argv) setsignal(SIGSYS, SIG_IGN); setsignal(SIGPIPE, SIG_IGN); setsignal(SIGALRM, SIG_IGN); - setsignal(SIGTERM, cleanup); + setsignal(SIGTERM, do_sigterm); setsignal(SIGUSR1, SIG_IGN); setsignal(SIGUSR2, SIG_IGN); #ifdef SIGPOLL @@ -737,7 +737,7 @@ int main(int argc, char **argv) } } else { #endif - setsignal(SIGCHLD, reapchild); + setsignal(SIGCHLD, do_sigchld); setregid(-1, PROCGID); setreuid(-1, PROCUID); msg_out(norm, "Starting: MAX_CH(%d)", max_child); diff --git a/srelay.h b/srelay.h index 3e4d5e7..35010f0 100644 --- a/srelay.h +++ b/srelay.h @@ -366,7 +366,7 @@ struct user_pass { }; #ifndef SIGFUNC_DEFINED -typedef void (*sigfunc_t)(); +typedef void (*sigfunc_t)(int); #endif #ifndef MAX