From 3c4d48bc9f6d8228b4eb61ef7920bdc64fc2eec1 Mon Sep 17 00:00:00 2001 From: Simon Ruderich Date: Fri, 11 Mar 2011 22:46:55 +0100 Subject: [PATCH] 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. --- src/tlsproxy.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) 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; -- 2.45.2