X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fmodules-load%2Fmodules-load.c;h=d37eec3f99feff993e05b84d42fb66099f44e6f3;hb=eb9da376d76b48585b3b63b4f91903b54f7abd36;hp=7772e3dc2ab90883c5b0095d09238a2dadfd6fdd;hpb=4087cb9e8fb90957d90d577e62e8ba056c2258cf;p=elogind.git diff --git a/src/modules-load/modules-load.c b/src/modules-load/modules-load.c index 7772e3dc2..d37eec3f9 100644 --- a/src/modules-load/modules-load.c +++ b/src/modules-load/modules-load.c @@ -34,6 +34,7 @@ #include "strv.h" #include "conf-files.h" #include "fileio.h" +#include "build.h" static char **arg_proc_cmdline_modules = NULL; @@ -217,7 +218,8 @@ static int help(void) { printf("%s [OPTIONS...] [CONFIGURATION FILE...]\n\n" "Loads statically configured kernel modules.\n\n" - " -h --help Show this help\n", + " -h --help Show this help\n" + " --version Show package version\n", program_invocation_short_name); return 0; @@ -225,9 +227,14 @@ static int help(void) { static int parse_argv(int argc, char *argv[]) { + enum { + ARG_VERSION = 0x100, + }; + static const struct option options[] = { { "help", no_argument, NULL, 'h' }, - { NULL, 0, NULL, 0 } + { "version", no_argument, NULL, ARG_VERSION }, + {} }; int c; @@ -240,15 +247,18 @@ static int parse_argv(int argc, char *argv[]) { switch (c) { case 'h': - help(); + return help(); + + case ARG_VERSION: + puts(PACKAGE_STRING); + puts(SYSTEMD_FEATURES); return 0; case '?': return -EINVAL; default: - log_error("Unknown option code %c", c); - return -EINVAL; + assert_not_reached("Unhandled option"); } }