X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=dhcp6c.init;h=e56c0d561925c7be22c1cf856d59f0f5bf36d01d;hb=275815ab23c73da13e5f1bca5aeb8bbac810759d;hp=ba952bc38efab3147cd71a7e78a1bc247f2d5c29;hpb=05357254c694c119528785006b0f90600338fecd;p=packages%2Fdhcpv6.git diff --git a/dhcp6c.init b/dhcp6c.init index ba952bc..e56c0d5 100644 --- a/dhcp6c.init +++ b/dhcp6c.init @@ -4,12 +4,14 @@ # This shell script takes care of starting and stopping # dhcp6c. # -# chkconfig: - 66 36 -# description: dhcp6c supports server side of Dynamic Host Configuration -# Protocol for IPv6. +# chkconfig: 345 66 36 +# description: dhcp6c supports server side of Dynamic Host Configuration Protocol for IPv6. # processname: dhcp6c # config: /etc/dhcp6c.conf # config: /etc/sysconfig/dhcp6c +# +# $Id$ + # Source function library . /etc/rc.d/init.d/functions @@ -21,49 +23,71 @@ # Check that networking is up. if is_yes "${NETWORKING}"; then - if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then - msg_network_down DHCP6C - exit 1 - fi - else - exit 0 + if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then + msg_network_down "DHCPv6 client daemon" + exit 1 + fi +else + exit 0 fi -RETVAL=0 +start() { + # Check if the service is already running? + if [ ! -f /var/lock/subsys/dhcp6c ]; then + msg_starting "DHCPv6 client daemon" + daemon dhcp6c $DHCP6CIF + RETVAL=$? + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcp6c + else + msg_already_running "DHCPv6 client daemon" + fi +} +stop() { + if [ -f /var/lock/subsys/dhcp6c ]; then + msg_stopping "DHCPv6 client daemon" + killproc dhcp6c + rm -f /var/run/dhcp6c.pid /var/lock/subsys/dhcp6c >/dev/null 2>&1 + else + msg_not_running "DHCPv6 client daemon" + fi +} + +condrestart() { + if [ -f /var/lock/subsys/dhcp6c ]; then + stop + start + else + msg_not_running "DHCPv6 client daemon" + RETVAL=$1 + fi +} + +RETVAL=0 case "$1" in - start) - # Check if the service is already running? - if [ ! -f /var/lock/subsys/dhcp6c ]; then - msg_starting "DHCP6C" - daemon dhcp6c $DHCP6CIF - RETVAL=$? - [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcp6c - else - msg_already_running DHCP6C - fi - ;; + start) + start + ;; stop) - if [ -f /var/lock/subsys/dhcp6c ]; then - msg_stopping "DHCP6C Server" - killproc dhcp6c - rm -f /var/run/dhcp6c.pid /var/lock/subsys/dhcp6c >/dev/null 2>&1 - else - msg_not_running DHCP6C - fi - ;; - restart|reload) - $0 stop - $0 start - exit $? - ;; + stop + ;; + restart) + stop + start + ;; + try-restart) + condrestart 0 + ;; + force-reload) + condrestart 7 + ;; status) - status dhcp6c - exit $? - ;; + status dhcp6c + exit $? + ;; *) - msg_usage "$0 {start|stop|restart|force-reload|status}" - exit 3 + msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}" + exit 3 esac - + exit $RETVAL