diff options
-rwxr-xr-x | misc/bird.init | 52 | ||||
-rw-r--r-- | misc/bird.spec | 13 |
2 files changed, 44 insertions, 21 deletions
diff --git a/misc/bird.init b/misc/bird.init index 1cd4334..56842bf 100755 --- a/misc/bird.init +++ b/misc/bird.init @@ -15,38 +15,59 @@ # Source function library. . /etc/rc.d/init.d/functions -# Check that networking is up. -if [ "${NETWORKING}" = "no" ] -then - exit 0 -fi +[ -f /etc/sysconfig/network ] || exit 0 -[ -f /etc/bird.conf ] || exit 0 +. /etc/sysconfig/network -[ -f /usr/sbin/bird ] || exit 0 +BIRD4="yes" +BIRD6="yes" + +[ -f /etc/bird.conf ] || BIRD4="no" +[ -f /usr/sbin/bird ] || BIRD4="no" +[ "${NETWORKING}" = "yes" ] || BIRD4="no" + +[ -f /etc/bird-6.conf ] || BIRD6="no" +[ -f /usr/sbin/bird6 ] || BIRD6="no" +[ "${NETWORKING_IPV6}" = "yes" ] || BIRD6="no" RETVAL=0 # See how we were called. case "$1" in start) - echo -n "Starting BIRD: " - daemon bird - RETVAL=$? - - echo - [ $RETVAL -eq 0 ] && touch /var/lock/subsys/bird + if [ "$BIRD4" = "yes" ] + then + echo -n "Starting BIRD for IPv4: " + daemon bird + RETVAL=$? + echo + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/bird + fi + if [ "$BIRD6" = "yes" ] + then + echo -n "Starting BIRD for IPv6: " + daemon bird6 + RETVAL=$? + echo + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/bird6 + fi ;; stop) - echo -n "Stopping BIRD: " + echo -n "Stopping BIRD for IPv4: " killproc bird RETVAL=$? - echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/bird + + echo -n "Stopping BIRD for IPv6: " + killproc bird6 + RETVAL=$? + echo + [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/bird6 ;; status) status bird + status bird6 RETVAL=$? ;; restart) @@ -56,6 +77,7 @@ case "$1" in ;; reload) killall -HUP bird + killall -HUP bird6 RETVAL=$? ;; *) diff --git a/misc/bird.spec b/misc/bird.spec index 17f365d..6572cd2 100644 --- a/misc/bird.spec +++ b/misc/bird.spec @@ -1,11 +1,12 @@ Summary: BIRD Internet Routing Daemon Name: bird -Version: 1.0.5 +Version: 1.0.8 Release: 1 Copyright: GPL Group: Networking/Daemons Source: ftp://bird.network.cz/pub/bird/bird-%{version}.tar.gz Source1: bird.init +Source2: birdc6 Buildroot: /var/tmp/bird-root Url: http://bird.network.cz Prereq: /sbin/chkconfig @@ -18,22 +19,23 @@ protocols BGP, RIP and OSPF. %setup -n bird-%{version} %build -./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/run --enable-ipv6 +./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-ipv6 make mv bird bird6 -./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/run +make clean +./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var make %install rm -rf $RPM_BUILD_ROOT/* -make install prefix=$RPM_BUILD_ROOT/usr sysconfdir=$RPM_BUILD_ROOT/etc localstatedir=$RPM_BUILD_ROOT/var/run +make install prefix=$RPM_BUILD_ROOT/usr sysconfdir=$RPM_BUILD_ROOT/etc localstatedir=$RPM_BUILD_ROOT/var install bird6 $RPM_BUILD_ROOT/usr/sbin cd $RPM_BUILD_ROOT install -d etc/rc.d/init.d install $RPM_SOURCE_DIR/bird.init etc/rc.d/init.d/bird -install $RPM_SOURCE_DIR/birdc6 usr/bin/ +install $RPM_SOURCE_DIR/birdc6 usr/sbin/birdc6 %post /sbin/ldconfig @@ -50,4 +52,3 @@ fi %attr(755,root,root) /usr/sbin/birdc %attr(755,root,root) /usr/sbin/birdc6 %attr(755,root,root) /etc/rc.d/init.d/bird -%config /etc/bird.conf |