diff options
author | Lennart Poettering <lennart@poettering.net> | 2013-11-06 18:28:39 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2013-11-06 18:28:39 +0100 |
commit | eb9da376d76b48585b3b63b4f91903b54f7abd36 (patch) | |
tree | f58957844d6248d2df547727a4bfbd1b81c2ef97 /src/journal | |
parent | 4087cb9e8fb90957d90d577e62e8ba056c2258cf (diff) |
clients: unify how we invoke getopt_long()
Among other things this makes sure we always expose a --version command
and show it in the help texts.
Diffstat (limited to 'src/journal')
-rw-r--r-- | src/journal/cat.c | 11 | ||||
-rw-r--r-- | src/journal/coredumpctl.c | 11 | ||||
-rw-r--r-- | src/journal/journal-gatewayd.c | 13 | ||||
-rw-r--r-- | src/journal/journalctl.c | 14 |
4 files changed, 24 insertions, 25 deletions
diff --git a/src/journal/cat.c b/src/journal/cat.c index ea61578353..02b75642a3 100644 --- a/src/journal/cat.c +++ b/src/journal/cat.c @@ -63,7 +63,7 @@ static int parse_argv(int argc, char *argv[]) { { "identifier", required_argument, NULL, 't' }, { "priority", required_argument, NULL, 'p' }, { "level-prefix", required_argument, NULL, ARG_LEVEL_PREFIX }, - { NULL, 0, NULL, 0 } + {} }; int c; @@ -76,8 +76,7 @@ static int parse_argv(int argc, char *argv[]) { switch (c) { case 'h': - help(); - return 0; + return help(); case ARG_VERSION: puts(PACKAGE_STRING); @@ -115,9 +114,11 @@ static int parse_argv(int argc, char *argv[]) { break; } - default: - log_error("Unknown option code %c", c); + case '?': return -EINVAL; + + default: + assert_not_reached("Unhandled option"); } } diff --git a/src/journal/coredumpctl.c b/src/journal/coredumpctl.c index 75c96cc081..bcfee46da1 100644 --- a/src/journal/coredumpctl.c +++ b/src/journal/coredumpctl.c @@ -155,7 +155,7 @@ static int parse_argv(int argc, char *argv[], Set *matches) { { "no-legend", no_argument, NULL, ARG_NO_LEGEND }, { "output", required_argument, NULL, 'o' }, { "field", required_argument, NULL, 'F' }, - { NULL, 0, NULL, 0 } + {} }; assert(argc >= 0); @@ -163,15 +163,15 @@ static int parse_argv(int argc, char *argv[], Set *matches) { while ((c = getopt_long(argc, argv, "ho:F:", options, NULL)) >= 0) switch(c) { + case 'h': - help(); arg_action = ACTION_NONE; - return 0; + return help(); case ARG_VERSION: + arg_action = ACTION_NONE; puts(PACKAGE_STRING); puts(SYSTEMD_FEATURES); - arg_action = ACTION_NONE; return 0; case ARG_NO_PAGER: @@ -209,8 +209,7 @@ static int parse_argv(int argc, char *argv[], Set *matches) { return -EINVAL; default: - log_error("Unknown option code %c", c); - return -EINVAL; + assert_not_reached("Unhandled option"); } if (optind < argc) { diff --git a/src/journal/journal-gatewayd.c b/src/journal/journal-gatewayd.c index d4d4b7ef04..093dc74e2c 100644 --- a/src/journal/journal-gatewayd.c +++ b/src/journal/journal-gatewayd.c @@ -935,22 +935,24 @@ static int parse_argv(int argc, char *argv[]) { { "version", no_argument, NULL, ARG_VERSION }, { "key", required_argument, NULL, ARG_KEY }, { "cert", required_argument, NULL, ARG_CERT }, - { NULL, 0, NULL, 0 } + {} }; assert(argc >= 0); assert(argv); while ((c = getopt_long(argc, argv, "h", options, NULL)) >= 0) + switch(c) { + + case 'h': + return help(); + case ARG_VERSION: puts(PACKAGE_STRING); puts(SYSTEMD_FEATURES); return 0; - case 'h': - return help(); - case ARG_KEY: if (key_pem) { log_error("Key file specified twice"); @@ -981,8 +983,7 @@ static int parse_argv(int argc, char *argv[]) { return -EINVAL; default: - log_error("Unknown option code %c", c); - return -EINVAL; + assert_not_reached("Unhandled option"); } if (optind < argc) { diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index e38721df45..a5091042d4 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -248,7 +248,7 @@ static int parse_argv(int argc, char *argv[]) { { "dump-catalog", no_argument, NULL, ARG_DUMP_CATALOG }, { "update-catalog", no_argument, NULL, ARG_UPDATE_CATALOG }, { "reverse", no_argument, NULL, 'r' }, - { NULL, 0, NULL, 0 } + {} }; int c, r; @@ -261,8 +261,7 @@ static int parse_argv(int argc, char *argv[]) { switch (c) { case 'h': - help(); - return 0; + return help(); case ARG_VERSION: puts(PACKAGE_STRING); @@ -543,9 +542,6 @@ static int parse_argv(int argc, char *argv[]) { return log_oom(); break; - case '?': - return -EINVAL; - case 'F': arg_field = optarg; break; @@ -570,9 +566,11 @@ static int parse_argv(int argc, char *argv[]) { arg_reverse = true; break; - default: - log_error("Unknown option code %c", c); + case '?': return -EINVAL; + + default: + assert_not_reached("Unhandled option"); } } |