From c64f64b875879591873d68faf2d3cd8e9d644101 Mon Sep 17 00:00:00 2001 From: Guus Sliepen Date: Sat, 25 Jun 2011 21:16:13 +0200 Subject: [PATCH] Don't call exit_control() if we didn't do init_control(). --- src/tincd.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/tincd.c b/src/tincd.c index 23845fff..9d2b03b2 100644 --- a/src/tincd.c +++ b/src/tincd.c @@ -92,7 +92,7 @@ char *logfilename = NULL; /* log file location */ char *controlcookiename = NULL; char **g_argv; /* a copy of the cmdline arguments */ -static int status; +static int status = 1; static struct option const long_options[] = { {"config", required_argument, NULL, 'c'}, @@ -434,10 +434,10 @@ int main2(int argc, char **argv) { /* Setup sockets and open device. */ if(!setup_network()) - goto end; + goto end_nonet; if(!init_control()) - return 1; + goto end_nonet; /* Initiate all outgoing connections. */ @@ -488,10 +488,11 @@ int main2(int argc, char **argv) { close_network_connections(); end: - logger(LOG_NOTICE, "Terminating"); - exit_control(); +end_nonet: + logger(LOG_NOTICE, "Terminating"); + crypto_exit(); exit_configuration(&config_tree); -- 2.20.1