#!/bin/bash
#
# chkconfig: 2345 16 84
# description: A RIP routing engine for use with Zebra
#
# processname: ripd
# config: /etc/quagga/ripd.conf

# source function library
. /etc/rc.d/init.d/functions

# Get network config
. /etc/sysconfig/network

# quagga command line options
. /etc/sysconfig/quagga

# Check that networking is up.
[ "${NETWORKING}" = "no" ] && exit 0

# The process must be configured first.
[ -f /etc/quagga/ripd.conf ] || exit 0

RETVAL=0
prog="ripd"

case "$1" in
  start)
	echo -n $"Starting $prog: "
        daemon /usr/sbin/ripd -d $RIPD_OPTS
	RETVAL=$?
	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ripd
	echo
	;;
  stop)
	echo -n $"Shutting down $prog: "
	killproc ripd
	RETVAL=$?
	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ripd
	echo
	;;
  restart|reload)
        $0 stop
        $0 start
	RETVAL=$?
        ;;
  condrestart)
        if [ -f /var/lock/subsys/ripd ]; then
                $0 stop
		$0 start
        fi
	RETVAL=$?
        ;;
  status)
        status ripd
	RETVAL=$?
        ;;
  *)
	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
	exit 1
esac

exit $RETVAL
