summaryrefslogtreecommitdiff
path: root/redhat/ripngd.init
diff options
context:
space:
mode:
authorDavid Ward <david.ward@ll.mit.edu>2012-04-29 16:47:07 -0400
committerDavid Lamparter <equinox@diac24.net>2012-05-01 17:51:26 +0200
commita41242bed823db77186ed7d11953cffaa0c3b733 (patch)
treea8ed68356623d056fcb42893a53ad29f27d673c7 /redhat/ripngd.init
parent0bd268a5232f91c8cf01366b7ae43bcfed1dc8fe (diff)
redhat: update initscripts
Taken from Fedora packaging with additional fixes. * redhat/*.init: make all initscripts LSB-compliant; store the daemon configuration file location in $CONF_FILE, and perform existence testing before starting the daemon * redhat/babeld.init: add initscript for Babel routing engine * redhat/quagga.sysconfig: add command-line options for babeld; remove the daemon configuration file locations from $*_OPTS; clarify directions for configuring watchquagga * redhat/Makefile.am: add babeld.init to distribution Signed-off-by: David Ward <david.ward@ll.mit.edu> Signed-off-by: David Lamparter <equinox@diac24.net>
Diffstat (limited to 'redhat/ripngd.init')
-rw-r--r--redhat/ripngd.init71
1 files changed, 40 insertions, 31 deletions
diff --git a/redhat/ripngd.init b/redhat/ripngd.init
index 57ae928c..88f346f8 100644
--- a/redhat/ripngd.init
+++ b/redhat/ripngd.init
@@ -1,11 +1,13 @@
#!/bin/bash
-#
-# chkconfig: 2345 16 84
-# description: A RIP routing engine for use with Zebra and IPv6
-#
-# processname: ripngd
+# chkconfig: - 16 84
# config: /etc/quagga/ripngd.conf
+### BEGIN INIT INFO
+# Provides: ripngd
+# Short-Description: RIP routing engine for IPv6
+# Description: RIP routing engine for use with Zebra and IPv6
+### END INIT INFO
+
# source function library
. /etc/rc.d/init.d/functions
@@ -15,49 +17,56 @@
# quagga command line options
. /etc/sysconfig/quagga
-# Check that networking is up.
-[ "${NETWORKING_IPV6}" = "no" ] && exit 0
-
-# The process must be configured first.
-[ -f /etc/quagga/ripngd.conf ] || exit 0
-
RETVAL=0
-prog="ripngd"
+PROG="ripngd"
+cmd=ripngd
+LOCK_FILE=/var/lock/subsys/ripngd
+CONF_FILE=/etc/quagga/ripngd.conf
case "$1" in
start)
- echo -n $"Starting $prog: "
- daemon /usr/sbin/ripngd -d $RIPNGD_OPTS
+ # Check that networking is up.
+ [ "${NETWORKING}" = "no" ] && exit 1
+
+ # The process must be configured first.
+ [ -f $CONF_FILE ] || exit 6
+ if [ `id -u` -ne 0 ]; then
+ echo $"Insufficient privilege" 1>&2
+ exit 4
+ fi
+
+ echo -n $"Starting $PROG: "
+ daemon $cmd -d $RIPNGD_OPTS -f $CONF_FILE
RETVAL=$?
- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ripngd
+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
echo
;;
stop)
- echo -n $"Shutting down $prog: "
- killproc ripngd
+ echo -n $"Shutting down $PROG: "
+ killproc $cmd
RETVAL=$?
- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ripngd
+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
echo
;;
- restart|reload)
- $0 stop
- $0 start
+ restart|reload|force-reload)
+ $0 stop
+ $0 start
RETVAL=$?
- ;;
- condrestart)
- if [ -f /var/lock/subsys/ripngd ]; then
- $0 stop
+ ;;
+ condrestart|try-restart)
+ if [ -f $LOCK_FILE ]; then
+ $0 stop
$0 start
- fi
+ fi
RETVAL=$?
- ;;
+ ;;
status)
- status ripngd
+ status $cmd
RETVAL=$?
- ;;
+ ;;
*)
- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
- exit 1
+ echo $"Usage: $0 {start|stop|restart|reload|force-reload|condrestart|try-restart|status}"
+ exit 2
esac
exit $RETVAL