commit:     0cfd0dd9ef580ed9dc563ccc164d70efe8f299db
Author:     William Hubbs <w.d.hubbs <AT> gmail <DOT> com>
AuthorDate: Mon May 22 17:15:15 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon May 22 17:15:15 2017 +0000
URL:        https://gitweb.gentoo.org/proj/openrc.git/commit/?id=0cfd0dd9

openrc-shutdown: move to single user mode by default

To be more compatible with sysvinit, move to single user mode if no
options are specified on the command line.

 man/openrc-shutdown.8    | 5 ++++-
 src/rc/openrc-shutdown.c | 4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/man/openrc-shutdown.8 b/man/openrc-shutdown.8
index eae16ae8..d0e95e24 100644
--- a/man/openrc-shutdown.8
+++ b/man/openrc-shutdown.8
@@ -8,7 +8,7 @@
 .\" This file may not be copied, modified, propagated, or distributed
 .\"    except according to the terms contained in the LICENSE file.
 .\"
-.Dd April 6, 2017
+.Dd May 22, 2017
 .Dt openrc-shutdown 8 SMM
 .Os OpenRC
 .Sh NAME
@@ -40,6 +40,9 @@ upgrade of OpenRC if you are using openrc-init as your init 
process.
 .It Fl r , -reboot
 Stop all services, kill all processes and reboot the system.
 .El
+.Pp
+If none of these options are given, the default is to move the system
+into single user mode.
 .Sh SEE ALSO
 .Xr openrc-init 8 ,
 .Xr kexec 8 ,

diff --git a/src/rc/openrc-shutdown.c b/src/rc/openrc-shutdown.c
index 8905d354..0ed77445 100644
--- a/src/rc/openrc-shutdown.c
+++ b/src/rc/openrc-shutdown.c
@@ -114,7 +114,7 @@ if (geteuid() != 0)
                case_RC_COMMON_GETOPT
                }
        }
-       if (cmd_count != 1) {
+       if (cmd_count > 1) {
                eerror("%s: %s\n", applet, exclusive);
                usage(EXIT_FAILURE);
        }
@@ -128,5 +128,7 @@ if (geteuid() != 0)
                send_cmd("reboot");
        else if (do_reexec)
                send_cmd("reexec");
+       else
+               send_cmd("single");
        return 0;
 }

Reply via email to