diff options
-rw-r--r-- | ChangeLog | 15 | ||||
-rwxr-xr-x | sh/gendepends.sh | 5 |
2 files changed, 15 insertions, 5 deletions
@@ -1,13 +1,18 @@ # ChangeLog for Gentoo System Intialization ("rc") scripts # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPLv2 + 22 Jul 2007; Roy Marples <uberlord@gentoo.org>: + + Harden gendepends.sh some more so we only capture the stdout we want from + the depend function, #186072. + 21 Jul 2007; Roy Marples <uberlord@gentoo.org>: - RC_DEPEND_STRICT now controls dependency strictness. - If yes then we only use services in the boot and default runlevels, - regradless of service state. - If no then we take into account coldplugged services and the state - of currently running services. + RC_DEPEND_STRICT now controls dependency strictness. + If yes then we only use services in the boot and default runlevels, + regradless of service state. + If no then we take into account coldplugged services and the state + of currently running services. Fixes #185640. 15 Jul 2007; Roy Marples <uberlord@gentoo.org>: diff --git a/sh/gendepends.sh b/sh/gendepends.sh index 6c86f2a9..0cb04e66 100755 --- a/sh/gendepends.sh +++ b/sh/gendepends.sh @@ -33,6 +33,9 @@ for SVCNAME in * ; do SVCNAME=${SVCNAME##*/} ( + # Save stdout in fd3, then remap it to stderr + exec 3>&1 1>&2 + rc_c=${SVCNAME%%.*} if [ -n "${rc_c}" -a "${rc_c}" != "${SVCNAME}" ] ; then [ -e /etc/conf.d/"${rc_c}" ] && . /etc/conf.d/"${rc_c}" >&2 @@ -42,6 +45,8 @@ for SVCNAME in * ; do [ -e /etc/conf.d/"${SVCNAME}" ] && . /etc/conf.d/"${SVCNAME}" >&2 if . /etc/init.d/"${SVCNAME}" ; then + # Restore stdout now + exec 1>&3 echo "${SVCNAME}" depend |