From 38a73ea995f2080736f599208f7f5c11e33338cb Mon Sep 17 00:00:00 2001 From: jvdias Date: Wed, 19 Oct 2005 21:48:56 +0000 Subject: [PATCH] handle named -c option properly; allow -D option to be used with bind-chroot --- named.init | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/named.init b/named.init index f9f00d7..ffe8260 100755 --- a/named.init +++ b/named.init @@ -19,6 +19,8 @@ [ -r /etc/sysconfig/named ] && . /etc/sysconfig/named +[ -n "$ROOTDIR" ] && ROOTDIR=`echo $ROOTDIR | sed 's#//*#/#g;s#/$##'` + RETVAL=0 named='named' if [[ "$ENABLE_SDB" = [yY1]* ]] && [ -x /usr/sbin/named_sdb ]; then @@ -28,20 +30,20 @@ prog=$named [ -x /usr/sbin/$named ] || exit 1 -named_conf=/etc/named.conf -c_opt=0 -if echo "$OPTIONS" | egrep -q '(\<|['"'"'"\ \ ])-c'; then - named_conf=`echo ${OPTIONS} | sed 's/^.*[\ \ ]-c[\ \ ]*//;s/[\ \ '"'"'"].*$//'`; - c_opt=1; -fi; - -[ -r ${ROOTDIR}/${named_conf} ] || exit 1 - -if [ ${c_opt} -eq 0 ]; then - named_conf=''; -fi; - -[ -n "$ROOTDIR" ] && ROOTDIR=`echo $ROOTDIR | sed 's#//*#/#g;s#/$##'` +nmdcOption() +{ let i=0; + for a in $*; + do ((++i)); + if [ $a = -c ]; then + ((++i)); + eval 'echo $'$i; + elif [[ $a = -c* ]]; then + echo ${a#-c}; + fi; + done; +} +named_conf=`nmdcOption $OPTIONS`; +[ -r ${ROOTDIR}/${named_conf:-etc/named.conf} ] || exit 1 start() { # Start daemons.