From bb9d3c7e371801ab516ccf3a60472aba03d59ba6 Mon Sep 17 00:00:00 2001 From: halex <> Date: Sun, 25 Sep 2011 17:55:14 +0000 Subject: [PATCH] revert previous and pass on the RC_DEBUG and RC_FORCE flags in the start+stop dance on restart rather than exporting them and expose the script to a potentially polluted environment ok ajacoutot@ robert@ --- src/etc/rc.d/rc.subr | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/etc/rc.d/rc.subr b/src/etc/rc.d/rc.subr index 5fbe41bb..96551d3f 100644 --- a/src/etc/rc.d/rc.subr +++ b/src/etc/rc.d/rc.subr @@ -1,4 +1,4 @@ -# $OpenBSD: rc.subr,v 1.48 2011/09/24 17:35:15 ajacoutot Exp $ +# $OpenBSD: rc.subr,v 1.49 2011/09/25 17:55:14 halex Exp $ # # Copyright (c) 2010, 2011 Antoine Jacoutot # Copyright (c) 2010, 2011 Ingo Schwarze @@ -45,7 +45,7 @@ rc_stop() { } rc_do() { - if [ -n "${_RC_DEBUG}" ]; then + if [ -n "${RC_DEBUG}" ]; then echo "doing $@" && "$@" else "$@" >/dev/null 2>&1 @@ -83,13 +83,13 @@ rc_cmd() { [ $(id -u) -eq 0 ] || \ rc_err "$0: need root privileges" - [ -z "${_RC_FORCE}" ] && [ X"${daemon_flags}" = X"NO" ] && exit 1 + [ -z "${RC_FORCE}" ] && [ X"${daemon_flags}" = X"NO" ] && exit 1 eval _enotsup=\${rc_${1}} [ X"${_enotsup}" != X"NO" ] || rc_err "$0: $1 is not supported" [ X"${rc_bg}" = X"YES" ] && local _bg="&" - [ -n "${_RC_DEBUG}" ] || local _n="-n" + [ -n "${RC_DEBUG}" ] || local _n="-n" case "$1" in check) @@ -131,7 +131,8 @@ rc_cmd() { rc_exit ok ;; restart) - /etc/rc.d/${_name} stop && /etc/rc.d/${_name} start + /etc/rc.d/${_name} ${RC_DEBUG} ${RC_FORCE} stop && + /etc/rc.d/${_name} ${RC_DEBUG} ${RC_FORCE} start ;; *) rc_usage @@ -143,10 +144,11 @@ rc_cmd() { [ -n "${daemon}" ] || rc_err "$0: daemon is not set" +unset RC_DEBUG RC_FORCE while getopts "df" c; do case "$c" in - d) export _RC_DEBUG=1;; - f) export _RC_FORCE=1;; + d) RC_DEBUG=-d;; + f) RC_FORCE=-f;; *) rc_usage;; esac done @@ -162,7 +164,7 @@ getcap -f /etc/login.conf ${_name} 1>/dev/null 2>&1 && \ [ -z "${daemon_class}" ] && daemon_class=daemon [ -z "${daemon_user}" ] && daemon_user=root -[ -n "${_RC_FORCE}" ] && [ X"${_rcflags}" = X"NO" ] && unset _rcflags +[ -n "${RC_FORCE}" ] && [ X"${_rcflags}" = X"NO" ] && unset _rcflags [ -n "${_rcflags}" ] && daemon_flags=${_rcflags} [ -n "${_rcuser}" ] && daemon_user=${_rcuser}