From: Lennart Poettering Date: Mon, 6 Sep 2010 00:42:49 +0000 (+0200) Subject: systemctl: implement --version X-Git-Tag: v10~40 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=35df8f27fae82c6f9e83d750ffa5e54733b16cf2;p=systemd systemctl: implement --version https://bugs.freedesktop.org/show_bug.cgi?id=29912 --- diff --git a/src/systemctl.c b/src/systemctl.c index ecf3e013..c77f831e 100644 --- a/src/systemctl.c +++ b/src/systemctl.c @@ -3845,6 +3845,7 @@ static int systemctl_help(void) { printf("%s [OPTIONS...] {COMMAND} ...\n\n" "Send control commands to or query the systemd manager.\n\n" " -h --help Show this help\n" + " --version Show package version\n" " -t --type=TYPE List only units of a particular type\n" " -p --property=NAME Show only properties by this name\n" " -a --all Show all units/properties, including dead/empty ones\n" @@ -3979,6 +3980,7 @@ static int systemctl_parse_argv(int argc, char *argv[]) { enum { ARG_FAIL = 0x100, + ARG_VERSION, ARG_SESSION, ARG_SYSTEM, ARG_GLOBAL, @@ -3994,6 +3996,7 @@ static int systemctl_parse_argv(int argc, char *argv[]) { static const struct option options[] = { { "help", no_argument, NULL, 'h' }, + { "version", no_argument, NULL, ARG_VERSION }, { "type", required_argument, NULL, 't' }, { "property", required_argument, NULL, 'p' }, { "all", no_argument, NULL, 'a' }, @@ -4026,6 +4029,10 @@ static int systemctl_parse_argv(int argc, char *argv[]) { systemctl_help(); return 0; + case ARG_VERSION: + puts(PACKAGE_STRING); + return 0; + case 't': arg_type = optarg; break;