cvsdist 2f7f4bd
#!/bin/bash
cvsdist 2f7f4bd
#
cvsdist 2f7f4bd
# named           This shell script takes care of starting and stopping
cvsdist 2f7f4bd
#                 named (BIND DNS server).
cvsdist 2f7f4bd
#
cvsdist 2f7f4bd
# chkconfig: - 55 45
cvsdist 2f7f4bd
# description: named (BIND) is a Domain Name Server (DNS) \
cvsdist 2f7f4bd
# that is used to resolve host names to IP addresses.
cvsdist 2f7f4bd
# probe: true
cvsdist 2f7f4bd
cvsdist 2f7f4bd
# Source function library.
cvsdist 2f7f4bd
. /etc/rc.d/init.d/functions
cvsdist 2f7f4bd
cvsdist 2f7f4bd
# Source networking configuration.
cvsdist 2f7f4bd
. /etc/sysconfig/network
cvsdist 2f7f4bd
cvsdist 2f7f4bd
# Check that networking is up.
cvsdist 2f7f4bd
[ ${NETWORKING} = "no" ] && exit 0
cvsdist 2f7f4bd
cvsdist 2f7f4bd
[ -f /usr/sbin/named ] || exit 0
cvsdist 2f7f4bd
cvsdist 2f7f4bd
[ -f /etc/named.conf ] || exit 0
cvsdist 2f7f4bd
cvsdist 2f7f4bd
RETVAL=0
cvsdist 2f7f4bd
cvsdist 2f7f4bd
start() {
cvsdist 2f7f4bd
        # Start daemons.
cvsdist 2f7f4bd
        echo -n "Starting named: "
cvsdist 2f7f4bd
        daemon named -u named
cvsdist 2f7f4bd
	RETVAL=$?
cvsdist 2f7f4bd
 	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/named
cvsdist 2f7f4bd
	echo
cvsdist 2f7f4bd
	return $RETVAL
cvsdist 2f7f4bd
}
cvsdist 2f7f4bd
stop() {
cvsdist 2f7f4bd
        # Stop daemons.
cvsdist 2f7f4bd
        echo -n "Shutting down named: "
cvsdist 2f7f4bd
        killproc named
cvsdist 2f7f4bd
	RETVAL=$?
cvsdist 2f7f4bd
	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/named
cvsdist 2f7f4bd
        echo
cvsdist 2f7f4bd
	return $RETVAL
cvsdist 2f7f4bd
}
cvsdist 2f7f4bd
rhstatus() {
cvsdist 2f7f4bd
	/usr/sbin/ndc status
cvsdist 2f7f4bd
	return $?
cvsdist 2f7f4bd
}	
cvsdist 2f7f4bd
restart() {
cvsdist 2f7f4bd
	stop
cvsdist 2f7f4bd
	start
cvsdist 2f7f4bd
}	
cvsdist 2f7f4bd
reload() {
cvsdist 2f7f4bd
	/usr/sbin/ndc reload
cvsdist 2f7f4bd
	return $?
cvsdist 2f7f4bd
}
cvsdist 2f7f4bd
probe() {
cvsdist 2f7f4bd
	# named knows how to reload intelligently; we don't want linuxconf
cvsdist 2f7f4bd
	# to offer to restart every time
cvsdist 2f7f4bd
	/usr/sbin/ndc reload >/dev/null 2>&1 || echo start
cvsdist 2f7f4bd
	return $?
cvsdist 2f7f4bd
}  
cvsdist 2f7f4bd
cvsdist 2f7f4bd
# See how we were called.
cvsdist 2f7f4bd
case "$1" in
cvsdist 2f7f4bd
	start)
cvsdist 2f7f4bd
		start
cvsdist 2f7f4bd
		;;
cvsdist 2f7f4bd
	stop)
cvsdist 2f7f4bd
		stop
cvsdist 2f7f4bd
		;;
cvsdist 2f7f4bd
	status)
cvsdist 2f7f4bd
		rhstatus
cvsdist 2f7f4bd
		;;
cvsdist 2f7f4bd
	restart)
cvsdist 2f7f4bd
		restart
cvsdist 2f7f4bd
		;;
cvsdist 2f7f4bd
	condrestart)
cvsdist 2f7f4bd
		[ -f /var/lock/subsys/named ] && restart || :
cvsdist 2f7f4bd
		;;
cvsdist 2f7f4bd
	reload)
cvsdist 2f7f4bd
		reload
cvsdist 2f7f4bd
		;;
cvsdist 2f7f4bd
	probe)
cvsdist 2f7f4bd
		probe
cvsdist 2f7f4bd
		;;
cvsdist 2f7f4bd
	*)
cvsdist 2f7f4bd
        	echo "Usage: named {start|stop|status|restart|condrestart|reload|probe}"
cvsdist 2f7f4bd
		exit 1
cvsdist 2f7f4bd
esac
cvsdist 2f7f4bd
cvsdist 2f7f4bd
exit $?
cvsdist 2f7f4bd