diff --git a/include/proto/mworker.h b/include/proto/mworker.h index 13e5c273d..87cbdd4eb 100644 --- a/include/proto/mworker.h +++ b/include/proto/mworker.h @@ -16,4 +16,8 @@ void mworker_proc_list_to_env(); void mworker_env_to_proc_list(); + +void mworker_block_signals(); +void mworker_unblock_signals(); + #endif /* PROTO_MWORKER_H_ */ diff --git a/src/haproxy.c b/src/haproxy.c index 85234720b..c9da06cd2 100644 --- a/src/haproxy.c +++ b/src/haproxy.c @@ -511,23 +511,6 @@ int current_child(int pid) return 0; } -static void mworker_block_signals() -{ - sigset_t set; - - sigemptyset(&set); - sigaddset(&set, SIGUSR1); - sigaddset(&set, SIGUSR2); - sigaddset(&set, SIGHUP); - sigaddset(&set, SIGCHLD); - ha_sigmask(SIG_SETMASK, &set, NULL); -} - -static void mworker_unblock_signals() -{ - haproxy_unblock_signals(); -} - /* * Send signal to every known children. */ diff --git a/src/mworker.c b/src/mworker.c index 2f0f09bf2..da2323c7d 100644 --- a/src/mworker.c +++ b/src/mworker.c @@ -16,11 +16,11 @@ #include #include +#include #include - /* * serialize the proc list and put it in the environment */ @@ -86,3 +86,22 @@ void mworker_env_to_proc_list() unsetenv("HAPROXY_PROCESSES"); } + +/* Signal blocking and unblocking */ + +void mworker_block_signals() +{ + sigset_t set; + + sigemptyset(&set); + sigaddset(&set, SIGUSR1); + sigaddset(&set, SIGUSR2); + sigaddset(&set, SIGHUP); + sigaddset(&set, SIGCHLD); + ha_sigmask(SIG_SETMASK, &set, NULL); +} + +void mworker_unblock_signals() +{ + haproxy_unblock_signals(); +}