commit: 9e3d349cc1ee14e91d377b6a38c786ac4b153fe5 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> AuthorDate: Thu Mar 15 10:07:38 2018 +0000 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> CommitDate: Thu Mar 15 10:09:38 2018 +0000 URL: https://gitweb.gentoo.org/proj/apache.git/commit/?id=9e3d349c
2.4/scripts/apache2ctl: Pass commands to the apache daemon. Gentoo-Bug: https://bugs.gentoo.org/634414 Thanks-to: Joona Hoikkala <joona <AT> kuori.org> Thanks-to: Andrey Falko <Ma3oxuct <AT> gmail.com> 2.4/scripts/apache2ctl | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/2.4/scripts/apache2ctl b/2.4/scripts/apache2ctl old mode 100755 new mode 100644 index eff10b5..2c7c699 --- a/2.4/scripts/apache2ctl +++ b/2.4/scripts/apache2ctl @@ -1,2 +1,25 @@ #!/bin/sh -exec /etc/init.d/apache2 "$@" + +APACHE2="/usr/sbin/apache2" +APACHE_OPTS="" +APACHE_RC_CONF="/etc/conf.d/apache2" +# List of init script verbs that should be passed forward +RC_VERBS="start stop restart checkconfd configtest modules virtualhosts configdump fullstatus graceful gracefulstop reload" + +load_rc_config() { + [ -f "${APACHE_RC_CONF}" ] || return 1 + eval "export $(grep '^[[:space:]]*APACHE2_OPTS' ${APACHE_RC_CONF})" + eval $(grep '^[[:space:]]*SERVERROOT' ${APACHE_RC_CONF}) + eval $(grep '^[[:space:]]*CONFIGFILE' ${APACHE_RC_CONF}) + export SERVERROOT="${SERVERROOT:-/usr/@LIBDIR@/apache2}" + export CONFIGFILE="${CONFIGFILE:-/etc/apache2/httpd.conf}" +} + +# If first parameter is a verb defined in $RC_VERBS, pass the command to init script. +# In other cases, compile command line and run the command on apache binary. +if [ "${RC_VERBS}" =~ "${1}" ] ; then + exec /etc/init.d/apache2 "${@}" +else + load_rc_config || exit 1 + ${APACHE2} ${APACHE2_OPTS} -d ${SERVERROOT} -f ${CONFIGFILE} "${@}" +fi
