From ce12bff96d6782297fb602cbbd4ff11ec2bc385e Mon Sep 17 00:00:00 2001 From: Harinn Date: Sat, 21 Mar 2026 14:35:10 +0700 Subject: [PATCH] srelay: fix signal handler build faliure --- pkgs/by-name/sr/srelay/package.nix | 5 ++- pkgs/by-name/sr/srelay/signal-handler.patch | 44 +++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 pkgs/by-name/sr/srelay/signal-handler.patch diff --git a/pkgs/by-name/sr/srelay/package.nix b/pkgs/by-name/sr/srelay/package.nix index 3f1dc4030110..7dee9d37efaf 100644 --- a/pkgs/by-name/sr/srelay/package.nix +++ b/pkgs/by-name/sr/srelay/package.nix @@ -14,7 +14,10 @@ stdenv.mkDerivation (finalAttrs: { sha256 = "1sn6005aqyfvrlkm5445cyyaj6h6wfyskfncfmds55x34hfyxpvl"; }; - patches = [ ./arm.patch ]; + patches = [ + ./arm.patch + ./signal-handler.patch + ]; buildInputs = [ libxcrypt ]; diff --git a/pkgs/by-name/sr/srelay/signal-handler.patch b/pkgs/by-name/sr/srelay/signal-handler.patch new file mode 100644 index 000000000000..04a3307d8058 --- /dev/null +++ b/pkgs/by-name/sr/srelay/signal-handler.patch @@ -0,0 +1,44 @@ +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