diff options
Diffstat (limited to 'package/bind/bind.sysvinit')
| -rw-r--r-- | package/bind/bind.sysvinit | 18 | 
1 files changed, 11 insertions, 7 deletions
| diff --git a/package/bind/bind.sysvinit b/package/bind/bind.sysvinit index a9babd215..171d3208a 100644 --- a/package/bind/bind.sysvinit +++ b/package/bind/bind.sysvinit @@ -18,10 +18,14 @@ case "$1" in  		test -z "$CHROOT" || ARGS="$ARGS -t $CHROOT"  		test -z "$SETUID" || ARGS="$ARGS -u $SETUID"  		if [ ! -f $CHROOT/etc/rndc.key ]; then -		    echo -n "Initializing $NAME control key: rndc-confgen" -		    set +e  -		    touch $CHROOT/etc/rndc.key # handle symlinks -		    rndc-confgen -a -r /dev/urandom $ARGS || echo "." +		    echo "Initializing $NAME control key: rndc-confgen" +		    set +e + +                    # if rndc.key is a symlink, the target must exist +		    touch $CHROOT/etc/rndc.key +		    touch etc/rndc.key + +		    rndc-confgen -a -r /dev/urandom $ARGS || true  		    set -e  		fi  		test -z "$CONF" || ARGS="$ARGS -c $CONF" @@ -37,12 +41,12 @@ case "$1" in  		echo "."  		;;  	restart) -		$0 stop +		$0 stop || true  		sleep 2 -		$0 start && exit $? +		$0 start  		;;  	reload|force-reload) -		rndc reload && exit $? +		rndc reload || $0 restart  		;;  	*)  		echo "Usage: $0 {start|stop|restart|reload|force-reload}" | 
