diff options
Diffstat (limited to 'main/quagga/zebra.initd')
-rw-r--r-- | main/quagga/zebra.initd | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/main/quagga/zebra.initd b/main/quagga/zebra.initd new file mode 100644 index 000000000..f0cc00843 --- /dev/null +++ b/main/quagga/zebra.initd @@ -0,0 +1,41 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later +# $Header: /var/cvsroot/gentoo-x86/net-misc/quagga/files/zebra.init,v 1.2 2007/02/25 09:57:18 mrness Exp $ + +depend() { + need net +} + +checkconfig() { + if [ ! -e /etc/quagga/zebra.conf ] ; then + eerror "You need to create /etc/quagga/zebra.conf first." + eerror "An example can be found in /etc/quagga/samples/zebra.conf.sample" + return 1 + fi +} + +cleanup() { + ebegin "Cleaning up stale zebra routes..." + /usr/sbin/ip route flush proto zebra + eend $? +} + +start() { + checkconfig || return 1 + cleanup + + ebegin "Starting zebra" + start-stop-daemon --start --quiet --exec /usr/sbin/zebra \ + -- -d -f /etc/quagga/zebra.conf ${ZEBRA_OPTS} \ + --pid_file /var/run/quagga/zebra.pid + result=$? + eend $result +} + +stop() { + ebegin "Stopping zebra" + start-stop-daemon --stop --quiet --pidfile /var/run/quagga/zebra.pid + result=$? + eend $result +} |