aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/charon-cmd/charon-cmd.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/charon-cmd/charon-cmd.c b/src/charon-cmd/charon-cmd.c
index acfdcbae8..d0fc4da07 100644
--- a/src/charon-cmd/charon-cmd.c
+++ b/src/charon-cmd/charon-cmd.c
@@ -254,6 +254,8 @@ static void handle_arguments(int argc, char *argv[])
}
while (TRUE)
{
+ bool handled = FALSE;
+
opt = getopt_long(argc, argv, "", long_opts, NULL);
switch (opt)
{
@@ -266,8 +268,9 @@ static void handle_arguments(int argc, char *argv[])
printf("%s, strongSwan %s\n", "charon-cmd", VERSION);
exit(0);
default:
- if (conn->handle(conn, opt, optarg) ||
- creds->handle(creds, opt, optarg))
+ handled |= conn->handle(conn, opt, optarg);
+ handled |= creds->handle(creds, opt, optarg);
+ if (handled)
{
continue;
}