From eb9da376d76b48585b3b63b4f91903b54f7abd36 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 6 Nov 2013 18:28:39 +0100 Subject: 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. --- src/login/inhibit.c | 11 ++++++----- src/login/loginctl.c | 8 +++----- 2 files changed, 9 insertions(+), 10 deletions(-) (limited to 'src/login') diff --git a/src/login/inhibit.c b/src/login/inhibit.c index 404881be6e..8c0056e503 100644 --- a/src/login/inhibit.c +++ b/src/login/inhibit.c @@ -160,7 +160,7 @@ static int parse_argv(int argc, char *argv[]) { { "why", required_argument, NULL, ARG_WHY }, { "mode", required_argument, NULL, ARG_MODE }, { "list", no_argument, NULL, ARG_LIST }, - { NULL, 0, NULL, 0 } + {} }; int c; @@ -173,8 +173,7 @@ static int parse_argv(int argc, char *argv[]) { switch (c) { case 'h': - help(); - return 0; + return help(); case ARG_VERSION: puts(PACKAGE_STRING); @@ -201,9 +200,11 @@ static int parse_argv(int argc, char *argv[]) { arg_action = ACTION_LIST; break; - default: - log_error("Unknown option code %c", c); + case '?': return -EINVAL; + + default: + assert_not_reached("Unhandled option"); } } diff --git a/src/login/loginctl.c b/src/login/loginctl.c index 736db6a11b..dc96e4bd69 100644 --- a/src/login/loginctl.c +++ b/src/login/loginctl.c @@ -1396,7 +1396,7 @@ static int parse_argv(int argc, char *argv[]) { { "host", required_argument, NULL, 'H' }, { "privileged", no_argument, NULL, 'P' }, { "no-ask-password", no_argument, NULL, ARG_NO_ASK_PASSWORD }, - { NULL, 0, NULL, 0 } + {} }; int c; @@ -1409,8 +1409,7 @@ static int parse_argv(int argc, char *argv[]) { switch (c) { case 'h': - help(); - return 0; + return help(); case ARG_VERSION: puts(PACKAGE_STRING); @@ -1475,8 +1474,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"); } } -- cgit v1.2.3-54-g00ecf