24df282
diff -up quagga-0.99.16/redhat/bgpd.init.posix quagga-0.99.16/redhat/bgpd.init
24df282
--- quagga-0.99.16/redhat/bgpd.init.posix	2010-03-17 14:11:26.681170285 +0100
24df282
+++ quagga-0.99.16/redhat/bgpd.init	2010-03-17 14:13:47.943170024 +0100
24df282
@@ -1,10 +1,12 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
24df282
-# chkconfig: 2345 16 84
24df282
-# description: A BGPv4, BGPv4+, BGPv4- routing engine for use with Zebra
0e32d5d
-#
24df282
-# processname: bgpd
24df282
-# config: /etc/zebra/bgpd.conf
24df282
+# chkconfig: - 16 84
24df282
+# config: /etc/quagga/bgpd.conf
24df282
+
24df282
+### BEGIN INIT INFO
24df282
+# Provides: bgpd
24df282
+# Short-Description: A BGPv4, BGPv4+, BGPv4- routing engine
24df282
+# Description: A BGPv4, BGPv4+, BGPv4- routing engine for use with Zebra
0e32d5d
+### END INIT INFO
0e32d5d
 
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
@@ -15,49 +17,57 @@
0e32d5d
 # quagga command line options
0e32d5d
 . /etc/sysconfig/quagga
0e32d5d
 
0e32d5d
-# Check that networking is up.
24df282
-[ "${NETWORKING}" = "no" ] && exit 0
0e32d5d
-
0e32d5d
-# The process must be configured first.
24df282
-[ -f /etc/quagga/bgpd.conf ] || exit 0
24df282
 
0e32d5d
 RETVAL=0
24df282
-prog="bgpd"
24df282
+PROG="bgpd"
24df282
+cmd=bgpd
24df282
+LOCK_FILE=/var/lock/subsys/bgpd
24df282
+CONF_FILE=/etc/quagga/bgpd.conf
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
0e32d5d
-	echo -n $"Starting $prog: "
24df282
-        daemon /usr/sbin/bgpd -d $BGPD_OPTS
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
0e32d5d
+	# The process must be configured first.
0e32d5d
+	[ -f $CONF_FILE ] || exit 6
24df282
+	if [ `id -u` -ne 0 ]; then
24df282
+		echo $"Insufficient privilege" 1>&2
24df282
+		exit 4
24df282
+	fi
0e32d5d
+
0e32d5d
+	echo -n $"Starting $PROG: "
24df282
+        daemon $cmd -d $BGPD_OPTS
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/bgpd
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
24df282
-	killproc bgpd
0e32d5d
+	echo -n $"Shutting down $PROG: "
0e32d5d
+	killproc $cmd
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/bgpd
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
24df282
-  restart|reload)
24df282
+  restart|reload|force-reload)
24df282
         $0 stop
24df282
         $0 start
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
24df282
-  condrestart)
24df282
-        if [ -f /var/lock/subsys/bgpd ]; then
24df282
+  condrestart|try-restart)
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
24df282
-        status bgpd
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
24df282
-	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
24df282
+	echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL
24df282
diff -up quagga-0.99.16/redhat/isisd.init.posix quagga-0.99.16/redhat/isisd.init
24df282
--- quagga-0.99.16/redhat/isisd.init.posix	2010-03-17 14:11:26.704385156 +0100
24df282
+++ quagga-0.99.16/redhat/isisd.init	2010-03-17 14:13:47.943170024 +0100
24df282
@@ -1,40 +1,44 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
24df282
-# chkconfig: 2345 16 84
0e32d5d
-# description: An ISIS routing engine for use with Quagga
0e32d5d
-#
0e32d5d
-# processname: isisd
24df282
+# chkconfig: - 16 84
0e32d5d
 # config: /etc/quagga/isisd.conf
24df282
 
24df282
+### BEGIN INIT INFO
24df282
+# Provides: isisd
0e32d5d
+# Short-Description: An ISIS routing engine
24df282
+# Description: An ISIS routing engine for use with Quagga
0e32d5d
+### END INIT INFO
24df282
+
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
 
0e32d5d
 # Get network config
0e32d5d
 . /etc/sysconfig/network
0e32d5d
 
0e32d5d
-# Check that networking is up.
0e32d5d
-[ "${NETWORKING}" = "no" ] && exit 0
0e32d5d
-
0e32d5d
-# The process must be configured first.
0e32d5d
-[ -f /etc/quagga/isisd.conf ] || exit 0
0e32d5d
-
0e32d5d
 RETVAL=0
0e32d5d
-
0e32d5d
-prog="isisd"
0e32d5d
+PROG="isisd"
0e32d5d
+cmd=isisd
0e32d5d
+LOCK_FILE=/var/lock/subsys/isisd
0e32d5d
+CONF_FILE=/etc/quagga/isisd.conf
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
0e32d5d
-	echo -n $"Starting $prog: "
0e32d5d
-        daemon /usr/sbin/isisd -d
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
0e32d5d
+	# The process must be configured first.
0e32d5d
+	[ -f $CONF_FILE] || exit 6
0e32d5d
+
0e32d5d
+	echo -n $"Starting $PROG: "
0e32d5d
+        daemon $cmd -d
0e32d5d
 	RETVAL=$?
0e32d5d
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/isisd
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
0e32d5d
-	killproc isisd
0e32d5d
+	echo -n $"Shutting down $PROG: "
0e32d5d
+	killproc $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/isisd
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   restart|reload)
24df282
@@ -43,19 +47,19 @@ case "$1" in
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   condrestart)
0e32d5d
-        if [ -f /var/lock/subsys/isisd ]; then
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
0e32d5d
-        status isisd
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
0e32d5d
 	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL
24df282
diff -up quagga-0.99.16/redhat/ospf6d.init.posix quagga-0.99.16/redhat/ospf6d.init
24df282
--- quagga-0.99.16/redhat/ospf6d.init.posix	2010-03-17 14:11:26.707387563 +0100
24df282
+++ quagga-0.99.16/redhat/ospf6d.init	2010-03-17 14:13:47.944168987 +0100
24df282
@@ -1,11 +1,13 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
24df282
-# chkconfig: 2345 16 84
24df282
-# description: An OSPF routing engine for use with Zebra and IPv6
0e32d5d
-#
24df282
-# processname: ospf6d
24df282
+# chkconfig: - 16 84
24df282
 # config: /etc/quagga/ospf6d.conf
0e32d5d
 
24df282
+### BEGIN INIT INFO
24df282
+# Provides: ospf6d
24df282
+# Short-Description: A OSPF routing engine for IPv6
24df282
+# Description: An OSPF routing engine for use with Zebra and IPv6
24df282
+### END INIT INFO
24df282
+
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
 
24df282
@@ -15,49 +17,56 @@
0e32d5d
 # quagga command line options
0e32d5d
 . /etc/sysconfig/quagga
0e32d5d
 
0e32d5d
-# Check that networking is up.
24df282
-[ "${NETWORKING_IPV6}" = "no" ] && exit 0
0e32d5d
-
0e32d5d
-# The process must be configured first.
24df282
-[ -f /etc/quagga/ospf6d.conf ] || exit 0
0e32d5d
-
0e32d5d
 RETVAL=0
24df282
-prog="ospf6d"
24df282
+PROG="ospf6d"
24df282
+cmd=ospf6d
24df282
+LOCK_FILE=/var/lock/subsys/ospf6d
24df282
+CONF_FILE=/etc/quagga/ospf6d.conf
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
0e32d5d
-	echo -n $"Starting $prog: "
24df282
-        daemon /usr/sbin/ospf6d -d $OSPF6D_OPTS
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
0e32d5d
+	# The process must be configured first.
0e32d5d
+	[ -f $CONF_FILE ] || exit 6
24df282
+	if [ `id -u` -ne 0 ]; then
24df282
+		echo $"Insufficient privilege" 1>&2
24df282
+		exit 4
24df282
+	fi
0e32d5d
+
0e32d5d
+	echo -n $"Starting $PROG: "
24df282
+        daemon $cmd -d $OSPF6D_OPTS
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ospf6d
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
24df282
-	killproc ospf6d
0e32d5d
+	echo -n $"Shutting down $PROG: "
0e32d5d
+	killproc $cmd
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ospf6d
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
24df282
-  restart|reload)
24df282
+  restart|reload|force-reload)
24df282
         $0 stop
24df282
         $0 start
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
24df282
-  condrestart)
24df282
-        if [ -f /var/lock/subsys/ospf6d ]; then
24df282
+  condrestart|try-restart)
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
24df282
-        status ospf6d
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
24df282
-	echo $"Usage: $prog {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
24df282
+	echo $"Usage: $PROG {start|stop|restart|reload|force-reload|try-restart|status}"
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL
24df282
diff -up quagga-0.99.16/redhat/ospfd.init.posix quagga-0.99.16/redhat/ospfd.init
24df282
--- quagga-0.99.16/redhat/ospfd.init.posix	2010-03-17 14:11:26.709400924 +0100
24df282
+++ quagga-0.99.16/redhat/ospfd.init	2010-03-17 14:13:47.944168987 +0100
24df282
@@ -1,11 +1,13 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
24df282
-# chkconfig: 2345 16 84
24df282
-# description: An OSPF v2 routing engine for use with Zebra
0e32d5d
-#
24df282
-# processname: ospfd
24df282
+# chkconfig: - 16 84
24df282
 # config: /etc/quagga/ospfd.conf
0e32d5d
 
24df282
+### BEGIN INIT INFO
24df282
+# Provides: ospfd
24df282
+# Short-Description: A OSPF v2 routing engine
24df282
+# Description: An OSPF v2 routing engine for use with Zebra
24df282
+### END INIT INFO
24df282
+
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
 
24df282
@@ -15,50 +17,56 @@
0e32d5d
 # quagga command line options
0e32d5d
 . /etc/sysconfig/quagga
0e32d5d
 
0e32d5d
-# Check that networking is up.
0e32d5d
-[ "${NETWORKING}" = "no" ] && exit 0
0e32d5d
-
24df282
-# The process must be configured first.
24df282
-[ -f /etc/quagga/ospfd.conf ] || exit 0
0e32d5d
-
0e32d5d
 RETVAL=0
24df282
-
24df282
-prog="ospfd"
24df282
+PROG="ospfd"
24df282
+cmd=ospfd
24df282
+LOCK_FILE=/var/lock/subsys/ospfd
24df282
+CONF_FILE=/etc/quagga/ospfd.conf
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
24df282
-	echo -n $"Starting $prog: "
24df282
-        daemon /usr/sbin/ospfd -d $OSPFD_OPTS
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
24df282
+	# The process must be configured first.
24df282
+	[ -f $CONF_FILE ] || exit 6
24df282
+	if [ `id -u` -ne 0 ]; then
24df282
+		echo $"Insufficient privilege" 1>&2
24df282
+		exit 4
24df282
+	fi
0e32d5d
+
24df282
+	echo -n $"Starting $PROG: "
24df282
+        daemon $cmd -d $OSPFD_OPTS
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ospfd
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
24df282
-	killproc ospfd
0e32d5d
+	echo -n $"Shutting down $PROG: "
24df282
+	killproc $cmd
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ospfd
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
24df282
-  restart|reload)
24df282
+  restart|reload|force-reload)
24df282
         $0 stop
24df282
         $0 start
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
24df282
-  condrestart)
24df282
-        if [ -f /var/lock/subsys/ospfd ]; then
24df282
+  condrestart|try-restart)
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
24df282
-        status ospfd
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
24df282
-	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
24df282
+	echo $"Usage: $PROG {start|stop|restart|reload|force-reload|try-restart|status}"
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL
24df282
diff -up quagga-0.99.16/redhat/ripd.init.posix quagga-0.99.16/redhat/ripd.init
24df282
--- quagga-0.99.16/redhat/ripd.init.posix	2010-03-17 14:11:26.711384881 +0100
24df282
+++ quagga-0.99.16/redhat/ripd.init	2010-03-17 14:13:47.944168987 +0100
24df282
@@ -1,11 +1,13 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
24df282
-# chkconfig: 2345 16 84
24df282
-# description: A RIP routing engine for use with Zebra
0e32d5d
-#
24df282
-# processname: ripd
24df282
+# chkconfig: - 16 84
24df282
 # config: /etc/quagga/ripd.conf
0e32d5d
 
24df282
+### BEGIN INIT INFO
24df282
+# Provides: ripd
24df282
+# Short-Description: A RIP routing engine
24df282
+# Description: A RIP routing engine for use with Zebra
24df282
+### END INIT INFO
24df282
+
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
 
24df282
@@ -15,49 +17,56 @@
0e32d5d
 # quagga command line options
0e32d5d
 . /etc/sysconfig/quagga
0e32d5d
 
0e32d5d
-# Check that networking is up.
0e32d5d
-[ "${NETWORKING}" = "no" ] && exit 0
0e32d5d
-
0e32d5d
-# The process must be configured first.
24df282
-[ -f /etc/quagga/ripd.conf ] || exit 0
24df282
-
0e32d5d
 RETVAL=0
24df282
-prog="ripd"
24df282
+PROG="ripd"
24df282
+cmd=ripd
24df282
+LOCK_FILE=/var/lock/subsys/ripd
24df282
+CONF_FILE=/etc/quagga/ripd.conf
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
0e32d5d
-	echo -n $"Starting $prog: "
24df282
-        daemon /usr/sbin/ripd -d $RIPD_OPTS
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
0e32d5d
+	# The process must be configured first.
0e32d5d
+	[ -f $CONF_FILE ] || exit 6
24df282
+	if [ `id -u` -ne 0 ]; then
24df282
+		echo $"Insufficient privilege" 1>&2
24df282
+		exit 4
24df282
+	fi
0e32d5d
+
0e32d5d
+	echo -n $"Starting $PROG: "
24df282
+        daemon $cmd -d $RIPD_OPTS
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ripd
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
24df282
-	killproc ripd
0e32d5d
+	echo -n $"Shutting down $PROG: "
0e32d5d
+	killproc $cmd
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ripd
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
24df282
-  restart|reload)
24df282
+  restart|reload|force-reload)
24df282
         $0 stop
24df282
         $0 start
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
24df282
-  condrestart)
24df282
-        if [ -f /var/lock/subsys/ripd ]; then
24df282
+  condrestart|try-restart)
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
24df282
-        status ripd
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
24df282
-	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
24df282
+	echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL
24df282
diff -up quagga-0.99.16/redhat/ripngd.init.posix quagga-0.99.16/redhat/ripngd.init
24df282
--- quagga-0.99.16/redhat/ripngd.init.posix	2010-03-17 14:11:26.713385042 +0100
24df282
+++ quagga-0.99.16/redhat/ripngd.init	2010-03-17 14:13:47.945166204 +0100
24df282
@@ -1,11 +1,13 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
24df282
-# chkconfig: 2345 16 84
0e32d5d
-# description: A RIP routing engine for use with Zebra and IPv6
0e32d5d
-#
0e32d5d
-# processname: ripngd
24df282
+# chkconfig: - 16 84
0e32d5d
 # config: /etc/quagga/ripngd.conf
24df282
 
24df282
+### BEGIN INIT INFO
24df282
+# Provides: ripngd
0e32d5d
+# Short-Description: A RIP routing engine for IPv6
0e32d5d
+# Description: A RIP routing engine for use with Zebra and IPv6
0e32d5d
+### END INIT INFO
24df282
+
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
 
24df282
@@ -15,49 +17,56 @@
0e32d5d
 # quagga command line options
0e32d5d
 . /etc/sysconfig/quagga
0e32d5d
 
0e32d5d
-# Check that networking is up.
0e32d5d
-[ "${NETWORKING_IPV6}" = "no" ] && exit 0
0e32d5d
-
0e32d5d
-# The process must be configured first.
0e32d5d
-[ -f /etc/quagga/ripngd.conf ] || exit 0
0e32d5d
-
0e32d5d
 RETVAL=0
0e32d5d
-prog="ripngd"
0e32d5d
+PROG="ripngd"
0e32d5d
+cmd=ripngd
0e32d5d
+LOCK_FILE=/var/lock/subsys/ripngd
0e32d5d
+CONF_FILE=/etc/quagga/ripngd.conf
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
0e32d5d
-	echo -n $"Starting $prog: "
0e32d5d
-        daemon /usr/sbin/ripngd -d $RIPNGD_OPTS
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
0e32d5d
+	# The process must be configured first.
0e32d5d
+	[ -f $CONF_FILE ] || exit 6
24df282
+	if [ `id -u` -ne 0 ]; then
24df282
+		echo $"Insufficient privilege" 1>&2
24df282
+		exit 4
24df282
+	fi
0e32d5d
+
0e32d5d
+	echo -n $"Starting $PROG: "
0e32d5d
+        daemon $cmd -d $RIPNGD_OPTS
0e32d5d
 	RETVAL=$?
0e32d5d
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ripngd
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
0e32d5d
-	killproc ripngd
0e32d5d
+	echo -n $"Shutting down $PROG: "
0e32d5d
+	killproc $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ripngd
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
24df282
-  restart|reload)
24df282
+  restart|reload|force-reload)
24df282
         $0 stop
24df282
         $0 start
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
24df282
-  condrestart)
0e32d5d
-        if [ -f /var/lock/subsys/ripngd ]; then
24df282
+  condrestart|try-restart)
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
0e32d5d
-        status ripngd
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
24df282
-	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
24df282
+	echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL
24df282
diff -up quagga-0.99.16/redhat/watchquagga.init.posix quagga-0.99.16/redhat/watchquagga.init
24df282
--- quagga-0.99.16/redhat/watchquagga.init.posix	2010-03-17 14:11:26.715399800 +0100
24df282
+++ quagga-0.99.16/redhat/watchquagga.init	2010-03-17 14:13:47.945166204 +0100
24df282
@@ -1,9 +1,10 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
0e32d5d
+### BEGIN INIT INFO
24df282
+# Provides: watchquagga
24df282
 # chkconfig: 2345 17 83
24df282
-# description: A Quagga watchdog for use with Zebra
0e32d5d
-#
24df282
-# processname: watchquagga
24df282
+# Short-Description: A Quagga watchdog
24df282
+# Description: A Quagga watchdog for use with Zebra
0e32d5d
+### END INIT INFO
0e32d5d
 
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
@@ -14,28 +15,30 @@
0e32d5d
 # quagga command line options
0e32d5d
 . /etc/sysconfig/quagga
0e32d5d
 
0e32d5d
-# Check that networking is up.
0e32d5d
-[ "${NETWORKING}" = "no" ] && exit 0
0e32d5d
-
24df282
-# Check that there are daemons to be monitored.
24df282
-[ -z "$WATCH_DAEMONS" ] && exit 0
0e32d5d
-
0e32d5d
 RETVAL=0
24df282
-prog="watchquagga"
24df282
+PROG="watchquagga"
24df282
+cmd=watchquagga
24df282
+LOCK_FILE=/var/lock/subsys/watchquagga
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
24df282
+	# Check that there are daemons to be monitored.
24df282
+	[ -z "$WATCH_DAEMONS" ] && exit 1
0e32d5d
+
24df282
 	echo -n $"Starting $prog: "
24df282
-        daemon /usr/sbin/watchquagga -d $WATCH_OPTS $WATCH_DAEMONS
24df282
+        daemon $cmd -d $WATCH_OPTS $WATCH_DAEMONS
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/watchquagga
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
24df282
-	killproc watchquagga
0e32d5d
+	echo -n $"Shutting down $PROG: "
be647ac
+	killproc $cmd
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/watchquagga
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   restart|reload)
24df282
@@ -44,19 +47,19 @@ case "$1" in
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   condrestart)
24df282
-        if [ -f /var/lock/subsys/watchquagga ]; then
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
24df282
-        status watchquagga
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
0e32d5d
 	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL
24df282
diff -up quagga-0.99.16/redhat/zebra.init.posix quagga-0.99.16/redhat/zebra.init
24df282
--- quagga-0.99.16/redhat/zebra.init.posix	2010-03-17 14:11:26.717385084 +0100
24df282
+++ quagga-0.99.16/redhat/zebra.init	2010-03-17 14:13:47.945166204 +0100
24df282
@@ -1,64 +1,72 @@
0e32d5d
 #!/bin/bash
0e32d5d
-#
24df282
-# chkconfig: 2345 15 85
24df282
-# description: GNU Zebra routing manager
0e32d5d
-#
24df282
-# processname: zebra
24df282
+# chkconfig: - 15 85
24df282
 # config: /etc/quagga/zebra.conf
0e32d5d
 
24df282
+### BEGIN INIT INFO
24df282
+# Provides: zebra
24df282
+# Short-Description: GNU Zebra routing manager
24df282
+# Description: GNU Zebra routing manager
24df282
+### END INIT INFO
24df282
+
0e32d5d
 # source function library
0e32d5d
 . /etc/rc.d/init.d/functions
24df282
 
0e32d5d
 # quagga command line options
0e32d5d
 . /etc/sysconfig/quagga
0e32d5d
 
0e32d5d
-# Check that networking is up.
0e32d5d
-[ "${NETWORKING}" = "no" ] && exit 0
0e32d5d
-
0e32d5d
-# The process must be configured first.
24df282
-[ -f /etc/quagga/zebra.conf ] || exit 0
0e32d5d
-
0e32d5d
 RETVAL=0
24df282
-
24df282
-prog="zebra"
24df282
+PROG="zebra"
24df282
+cmd=zebra
24df282
+LOCK_FILE=/var/lock/subsys/zebra
24df282
+CONF_FILE=/etc/quagga/zebra.conf
0e32d5d
 
0e32d5d
 case "$1" in
0e32d5d
   start)
0e32d5d
-	echo -n $"Starting $prog: "
0e32d5d
+	# Check that networking is up.
0e32d5d
+	[ "${NETWORKING}" = "no" ] && exit 1
0e32d5d
+
0e32d5d
+	# The process must be configured first.
0e32d5d
+	[ -f $CONF_FILE ] || exit 6
24df282
+	if [ `id -u` -ne 0 ]; then
24df282
+		echo $"Insufficient privilege" 1>&2
24df282
+		exit 4
24df282
+	fi
0e32d5d
+
0e32d5d
+	echo -n $"Starting $PROG: "
24df282
 
24df282
 	/sbin/ip route flush proto zebra
24df282
 			
24df282
-        daemon /usr/sbin/zebra -d $ZEBRA_OPTS
24df282
+        daemon $cmd -d $ZEBRA_OPTS
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/zebra
0e32d5d
+	[ $RETVAL -eq 0 ] && touch $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
0e32d5d
   stop)
0e32d5d
-	echo -n $"Shutting down $prog: "
24df282
-	killproc zebra
0e32d5d
+	echo -n $"Shutting down $PROG: "
0e32d5d
+	killproc $cmd
0e32d5d
 	RETVAL=$?
24df282
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/zebra
0e32d5d
+	[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
0e32d5d
 	echo
0e32d5d
 	;;
24df282
-  restart|reload)
24df282
+  restart|reload|force-reload)
24df282
         $0 stop
24df282
         $0 start
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
24df282
-  condrestart)
24df282
-        if [ -f /var/lock/subsys/zebra ]; then
24df282
+  condrestart|try-restart)
0e32d5d
+        if [ -f $LOCK_FILE ]; then
0e32d5d
                 $0 stop
0e32d5d
 		$0 start
0e32d5d
         fi
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   status)
24df282
-        status zebra
0e32d5d
+        status $cmd
0e32d5d
 	RETVAL=$?
0e32d5d
         ;;
0e32d5d
   *)
24df282
-	echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
0e32d5d
-	exit 1
24df282
+	echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
0e32d5d
+	exit 2
0e32d5d
 esac
0e32d5d
 
0e32d5d
 exit $RETVAL