Unverified Commit 86bb3142 authored by Yohann Boniface's avatar Yohann Boniface Committed by GitHub
Browse files

srelay: fix signal handler build faliure (#501871)

parents 76d97e60 ce12bff9
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -14,7 +14,10 @@ stdenv.mkDerivation (finalAttrs: {
    sha256 = "1sn6005aqyfvrlkm5445cyyaj6h6wfyskfncfmds55x34hfyxpvl";
  };

  patches = [ ./arm.patch ];
  patches = [
    ./arm.patch
    ./signal-handler.patch
  ];

  buildInputs = [ libxcrypt ];

+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