From 7bcd96e43dcde713e7298b45cfbedb13290a278f Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Tue, 26 Mar 2013 17:38:02 +0100 Subject: charon-cmd: pass arguments to all handlers, even if already handled --- src/charon-cmd/charon-cmd.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/charon-cmd') 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; } -- cgit v1.2.3