[systemd-commits] TODO man/systemctl.xml src/systemctl.c

Lennart Poettering lennart at kemper.freedesktop.org
Tue Apr 3 05:46:11 PDT 2012


 TODO              |    2 --
 man/systemctl.xml |    1 +
 src/systemctl.c   |   19 +++++++++++++------
 3 files changed, 14 insertions(+), 8 deletions(-)

New commits:
commit 568b679f2a5db6a23c795363091b94ad804f24f6
Author: Lennart Poettering <lennart at poettering.net>
Date:   Tue Apr 3 14:43:48 2012 +0200

    systemctl: make -f short for both --follow and --force

diff --git a/TODO b/TODO
index 9bff840..6f7679f 100644
--- a/TODO
+++ b/TODO
@@ -30,8 +30,6 @@ Features:
 
 * dbus upstream still refers to dbus.target and shouldn't
 
-* Make -f in systemctl enable both --follow and --force
-
 * ensure that logind sets the syslog facility to AUTH when logging
 
 * when a service has the same env var set twice we actually store it twice and return that in systemctl show -p... We should only show the last setting
diff --git a/man/systemctl.xml b/man/systemctl.xml
index 968da84..167a72b 100644
--- a/man/systemctl.xml
+++ b/man/systemctl.xml
@@ -430,6 +430,7 @@
 
                         <varlistentry>
                                 <term><option>--follow</option></term>
+                                <term><option>-f</option></term>
 
                                 <listitem><para>When used with
                                 <command>status</command> continously
diff --git a/src/systemctl.c b/src/systemctl.c
index f51085f..4b27b69 100644
--- a/src/systemctl.c
+++ b/src/systemctl.c
@@ -4247,7 +4247,8 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
                 ARG_NO_ASK_PASSWORD,
                 ARG_FAILED,
                 ARG_RUNTIME,
-                ARG_FOLLOW
+                ARG_FOLLOW,
+                ARG_FORCE
         };
 
         static const struct option options[] = {
@@ -4271,7 +4272,7 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
                 { "order",     no_argument,       NULL, ARG_ORDER     },
                 { "require",   no_argument,       NULL, ARG_REQUIRE   },
                 { "root",      required_argument, NULL, ARG_ROOT      },
-                { "force",     no_argument,       NULL, 'f'           },
+                { "force",     no_argument,       NULL, ARG_FORCE     },
                 { "no-reload", no_argument,       NULL, ARG_NO_RELOAD },
                 { "kill-mode", required_argument, NULL, ARG_KILL_MODE }, /* undocumented on purpose */
                 { "kill-who",  required_argument, NULL, ARG_KILL_WHO  },
@@ -4392,8 +4393,18 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
                         arg_quiet = true;
                         break;
 
+                case ARG_FORCE:
+                        arg_force ++;
+                        break;
+
+                case ARG_FOLLOW:
+                        arg_follow = true;
+                        break;
+
                 case 'f':
+                        /* -f is short for both --follow and --force! */
                         arg_force ++;
+                        arg_follow = true;
                         break;
 
                 case ARG_NO_RELOAD:
@@ -4439,10 +4450,6 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
                         }
                         break;
 
-                case ARG_FOLLOW:
-                        arg_follow = true;
-                        break;
-
                 case 'o':
                         arg_output = output_mode_from_string(optarg);
                         if (arg_output < 0) {



More information about the systemd-commits mailing list