cvsdist ef67d48
#!/bin/sh
cvsdist ef67d48
#
cvsdist ef67d48
# dhcpd         This shell script takes care of starting and stopping
cvsdist ef67d48
#               dhcpd.
cvsdist ef67d48
#
cvsdist ef67d48
# chkconfig: - 65 35
cvsdist ef67d48
# description: dhcpd provide access to Dynamic Host Control Protocol.
cvsdist ef67d48
cvsdist ef67d48
# Source function library.
cvsdist ef67d48
. /etc/rc.d/init.d/functions
cvsdist ef67d48
cvsdist ef67d48
# Source networking configuration.
cvsdist ef67d48
. /etc/sysconfig/network
cvsdist b144431
. /etc/sysconfig/dhcpd
cvsdist ef67d48
cvsdist ef67d48
# Check that networking is up.
cvsdist ef67d48
[ ${NETWORKING} = "no" ] && exit 0
cvsdist ef67d48
cvsdist ef67d48
[ -f /usr/sbin/dhcpd ] || exit 0
cvsdist ef67d48
[ -f /etc/dhcpd.conf ] || exit 0
jvdias 9ce54ad
if [ ! -f /var/lib/dhcp/dhcpd.leases ] ; then
jvdias 9ce54ad
   touch /var/lib/dhcp/dhcpd.leases
jvdias 9ce54ad
   [ -x /sbin/restorecon ] && [ -d /selinux ] && /sbin/restorecon /var/lib/dhcp/dhcpd.leases 
jvdias 9ce54ad
fi
cvsdist ef67d48
RETVAL=0
cvsdist 602bc44
prog="dhcpd"
cvsdist ef67d48
cvsdist 37d2807
configtest()
cvsdist 37d2807
{
jvdias 9ce54ad
	/usr/sbin/dhcpd -t	
jvdias 9ce54ad
	return $?
cvsdist 37d2807
}
cvsdist 37d2807
cvsdist ef67d48
start() {
cvsdist ef67d48
	# Start daemons.
cvsdist 602bc44
	echo -n $"Starting $prog: "
cvsdist b144431
	daemon /usr/sbin/dhcpd ${DHCPDARGS}
cvsdist ef67d48
	RETVAL=$?
cvsdist ef67d48
	echo
cvsdist ef67d48
	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcpd
cvsdist ef67d48
	return $RETVAL
cvsdist ef67d48
}
cvsdist ef67d48
cvsdist ef67d48
stop() {
cvsdist ef67d48
	# Stop daemons.
cvsdist 602bc44
	echo -n $"Shutting down $prog: "
cvsdist ef67d48
	killproc dhcpd
cvsdist ef67d48
	RETVAL=$?
cvsdist ef67d48
	echo
cvsdist ef67d48
	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/dhcpd
cvsdist ef67d48
	return $RETVAL
cvsdist ef67d48
}
cvsdist ef67d48
cvsdist ef67d48
# See how we were called.
cvsdist ef67d48
case "$1" in
cvsdist ef67d48
  start)
cvsdist ef67d48
	start
cvsdist ef67d48
	;;
cvsdist ef67d48
  stop)
cvsdist ef67d48
	stop
cvsdist ef67d48
	;;
cvsdist ef67d48
  restart|reload)
cvsdist 37d2807
	configtest || exit $?
cvsdist ef67d48
	stop
cvsdist ef67d48
	start
cvsdist ef67d48
	RETVAL=$?
cvsdist ef67d48
	;;
cvsdist ef67d48
  condrestart)
cvsdist ef67d48
	if [ -f /var/lock/subsys/dhcpd ]; then
cvsdist ef67d48
	    stop
cvsdist ef67d48
	    start
cvsdist ef67d48
	    RETVAL=$?
cvsdist ef67d48
	fi
cvsdist ef67d48
	;;
cvsdist 35f1569
  configtest)
cvsdist 37d2807
	configtest
cvsdist 35f1569
	RETVAL=$?
cvsdist 35f1569
	;;
cvsdist ef67d48
  status)
cvsdist ef67d48
	status dhcpd
cvsdist ef67d48
	RETVAL=$?
cvsdist ef67d48
	;;
cvsdist ef67d48
  *)
cvsdist 35f1569
	echo $"Usage: $0 {start|stop|restart|condrestart|configtest|status}"
cvsdist ef67d48
	exit 1
cvsdist ef67d48
esac
cvsdist ef67d48
cvsdist ef67d48
exit $RETVAL
cvsdist ef67d48