]> ruderich.org/simon Gitweb - tlsproxy/tlsproxy.git/commitdiff
src/tlsproxy.c: Only handle SIGINT in DEBUG mode.
authorSimon Ruderich <simon@ruderich.org>
Fri, 11 Mar 2011 21:46:55 +0000 (22:46 +0100)
committerSimon Ruderich <simon@ruderich.org>
Fri, 11 Mar 2011 21:46:55 +0000 (22:46 +0100)
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

index b67e666ed6f9e57f79faba9c3d985b22a5f1b2ff..5fed55427ae95468c88bed20b615472ba2bf8625 100644 (file)
@@ -73,7 +73,9 @@ static SEM *ringbuffer_free; /* Space for another element in the buffer? */
 static SEM *ringbuffer_lock; /* Read lock. */
 
 
 static SEM *ringbuffer_lock; /* Read lock. */
 
 
+#ifdef DEBUG
 static void sigint_handler(int signal);
 static void sigint_handler(int signal);
+#endif
 
 static void parse_arguments(int argc, char **argv);
 static void print_usage(const char *argv);
 
 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
     }
 
     /* Setup our SIGINT signal handler which allows a "normal" termination of
-     * the server. */
+     * the server in DEBUG mode. */
     sigemptyset(&action.sa_mask);
     sigemptyset(&action.sa_mask);
-    action.sa_handler = sigint_handler;
     action.sa_flags   = 0;
     action.sa_flags   = 0;
+#ifdef DEBUG
+    action.sa_handler = sigint_handler;
     sigaction(SIGINT, &action, NULL);
     sigaction(SIGINT, &action, NULL);
+#endif
     /* Ignore SIGPIPEs. */
     action.sa_handler = SIG_IGN;
     sigaction(SIGPIPE, &action, NULL);
     /* Ignore SIGPIPEs. */
     action.sa_handler = SIG_IGN;
     sigaction(SIGPIPE, &action, NULL);
@@ -236,11 +240,13 @@ int main(int argc, char **argv) {
     return EXIT_FAILURE;
 }
 
     return EXIT_FAILURE;
 }
 
+#ifdef DEBUG
 static void sigint_handler(int signal_number) {
     (void)signal_number;
 
     done = 1;
 }
 static void sigint_handler(int signal_number) {
     (void)signal_number;
 
     done = 1;
 }
+#endif
 
 static void parse_arguments(int argc, char **argv) {
     int option;
 
 static void parse_arguments(int argc, char **argv) {
     int option;