summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2010-09-06 02:42:49 +0200
committerLennart Poettering <lennart@poettering.net>2010-09-06 02:42:49 +0200
commit35df8f27fae82c6f9e83d750ffa5e54733b16cf2 (patch)
tree78b5d1c2d369bf3e79a18b0750d8bbcf9c32ba50
parent2a8cd298f48d4664601d8b51132e0a5d41da25f3 (diff)
systemctl: implement --version
https://bugs.freedesktop.org/show_bug.cgi?id=29912
-rw-r--r--src/systemctl.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/systemctl.c b/src/systemctl.c
index ecf3e013f2..c77f831eaa 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;