Blame | Last modification | View Log | RSS feed
#!/bin/sh#### BEGIN INIT INFO# Provides: dhcpd# Default-Start:# Default-Stop:# Should-Start:# Required-Start: $network# Required-Stop:# Short-Description: Start and stop the DHCPv6 server# Description: dhcpd provides the Dynamic Host Configuration Protocol (DHCPv6)# server.### END INIT INFO## The fields below are left around for legacy tools (will remove later).## chkconfig: - 65 35# description: dhcpd provides the Dynamic Host Configuration Protocol (DHCPv6) \# server# processname: dhcpd# config: /etc/dhcp/dhcpd6.conf# config: /var/lib/dhcpd/dhcpd6.leases# pidfile: /var/run/dhcpd6.pid. /etc/rc.d/init.d/functionsRETVAL=0prog=dhcpduser=dhcpdgroup=dhcpdexec=/usr/sbin/dhcpdlockfile=/var/lock/subsys/dhcpd6pidfile=/var/run/dhcpd6.pidstatedir=/var/lib/dhcpddefault_config=/etc/dhcp/dhcpd6.conf[ -f /etc/sysconfig/dhcpd6 ] && . /etc/sysconfig/dhcpd6# if the user specified a different config file, make sure we reference itfindConfig() {for arg in $DHCPDARGS ; doif [ "$found" = 1 ]; then[ -f "$arg" ] && echo "$arg"returnfiif [ "$arg" = "-cf" ]; thenfound=1continuefidoneecho $default_config}config="$(findConfig "$DHCPDARGS")"if [ ! -f $statedir/dhcpd6.leases ] ; thenmkdir -p $statedirtouch $statedir/dhcpd6.leases[ -x /sbin/restorecon ] && [ -d /selinux ] && /sbin/restorecon $statedir/dhcpd6.leases >/dev/null 2>&1ficonfigtest() {[ -x $exec ] || return 5[ -f $config ] || return 6$exec -q -t -6 -cf $configRETVAL=$?if [ $RETVAL -eq 1 ]; then$exec -t -6 -cf $configelseecho "Syntax: OK" >&2fireturn $RETVAL}rh_status() {status -p $pidfile -l $(basename $lockfile) $exec}rh_status_q() {rh_status >/dev/null 2>&1}start() {[ `id -u` -eq 0 ] || return 4[ -x $exec ] || return 5[ -f $config ] || return 6rh_status_q && return 0# add default dhcpd6.conf configuration file if there's no one in DHCPDARGS[ "${config}" = "${default_config}" ] && DHCPDARGS="$DHCPDARGS -cf $default_config"echo -n $"Starting $prog (DHCPv6): "daemon --pidfile=$pidfile $exec -6 -user $user -group $group $DHCPDARGS 2>/dev/nullRETVAL=$?echo[ $RETVAL -eq 0 ] && touch $lockfilereturn $RETVAL}stop() {[ `id -u` -eq 0 ] || return 4rh_status_q || return 0echo -n $"Shutting down $prog (DHCPv6): "killproc -p $pidfile $progRETVAL=$?echo[ $RETVAL -eq 0 ] && rm -f $lockfilereturn $RETVAL}usage() {echo $"Usage: $0 {start|stop|restart|force-reload|condrestart|try-restart|configtest|status}"}if [ $# -gt 1 ]; thenexit 2ficase "$1" instart)start;;stop)stop;;restart|force-reload)stop ; start;;condrestart|try-restart)rh_status_q || exit 0stop ; start;;reload)usage# unimplemented featureexit 3;;configtest)configtest;;status)rh_status;;*)usageexit 2;;esacexit $?