From 57968a8ab19b45b5d128656f6bed2581aee2ef22 Mon Sep 17 00:00:00 2001 From: Daniel Borkmann Date: Tue, 4 Jun 2013 11:38:17 +0200 Subject: sig: add signal handling functions Add an extra file for signal handling functions. Signed-off-by: Daniel Borkmann --- sig.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 sig.c (limited to 'sig.c') diff --git a/sig.c b/sig.c new file mode 100644 index 0000000..2b5ab5e --- /dev/null +++ b/sig.c @@ -0,0 +1,32 @@ +#include +#include + +#include "sig.h" + +void register_signal(int signal, void (*handler)(int)) +{ + sigset_t block_mask; + struct sigaction saction; + + sigfillset(&block_mask); + + saction.sa_handler = handler; + saction.sa_mask = block_mask; + saction.sa_flags = SA_RESTART; + + sigaction(signal, &saction, NULL); +} + +void register_signal_f(int signal, void (*handler)(int), int flags) +{ + sigset_t block_mask; + struct sigaction saction; + + sigfillset(&block_mask); + + saction.sa_handler = handler; + saction.sa_mask = block_mask; + saction.sa_flags = flags; + + sigaction(signal, &saction, NULL); +} -- cgit v1.2.3-54-g00ecf