From: Simon Ruderich Date: Fri, 11 Mar 2011 21:46:55 +0000 (+0100) Subject: src/tlsproxy.c: Only handle SIGINT in DEBUG mode. X-Git-Tag: 0.1~7 X-Git-Url: https://ruderich.org/simon/gitweb/?p=tlsproxy%2Ftlsproxy.git;a=commitdiff_plain;h=3c4d48bc9f6d8228b4eb61ef7920bdc64fc2eec1 src/tlsproxy.c: Only handle SIGINT in DEBUG mode. It's useful for valgrind in DEBUG mode, but makes it more difficult to terminate tlsproxy (Ctrl-C no longer works) in case of a stalled/unfinished connection. --- diff --git a/src/tlsproxy.c b/src/tlsproxy.c index b67e666..5fed554 100644 --- a/src/tlsproxy.c +++ b/src/tlsproxy.c @@ -73,7 +73,9 @@ static SEM *ringbuffer_free; /* Space for another element in the buffer? */ static SEM *ringbuffer_lock; /* Read lock. */ +#ifdef DEBUG static void sigint_handler(int signal); +#endif static void parse_arguments(int argc, char **argv); static void print_usage(const char *argv); @@ -104,11 +106,13 @@ int main(int argc, char **argv) { } /* Setup our SIGINT signal handler which allows a "normal" termination of - * the server. */ + * the server in DEBUG mode. */ sigemptyset(&action.sa_mask); - action.sa_handler = sigint_handler; action.sa_flags = 0; +#ifdef DEBUG + action.sa_handler = sigint_handler; sigaction(SIGINT, &action, NULL); +#endif /* Ignore SIGPIPEs. */ action.sa_handler = SIG_IGN; sigaction(SIGPIPE, &action, NULL); @@ -236,11 +240,13 @@ int main(int argc, char **argv) { return EXIT_FAILURE; } +#ifdef DEBUG static void sigint_handler(int signal_number) { (void)signal_number; done = 1; } +#endif static void parse_arguments(int argc, char **argv) { int option;