From 9d843ee6fa47473c28d37c878c0391e0644c0e55 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Tue, 4 May 2010 17:33:35 +0200 Subject: [PATCH] Do a proper cleanup when printing usage info. --- src/charon/charon.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/charon/charon.c b/src/charon/charon.c index 9b552fb62..35be63064 100644 --- a/src/charon/charon.c +++ b/src/charon/charon.c @@ -258,7 +258,6 @@ static void usage(const char *msg) " 2 = controlmore, 3 = raw, 4 = private)\n" "\n" ); - exit(msg == NULL? 0 : 1); } /** @@ -337,7 +336,8 @@ int main(int argc, char *argv[]) break; case 'h': usage(NULL); - break; + status = 0; + goto deinit; case 'v': printf("Linux strongSwan %s\n", VERSION); status = 0; @@ -351,7 +351,8 @@ int main(int argc, char *argv[]) continue; default: usage(""); - break; + status = 1; + goto deinit; } break; }