packages/bird: use new service functions

git-svn-id: svn+ssh://svn.openwrt.org/openwrt/packages@29079 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
Nicolas Thill 2011-11-13 22:16:25 +00:00 committed by Jo-Philipp Wich
parent fc6a2d02e5
commit 858c4dcbfc
5 changed files with 51 additions and 31 deletions

View File

@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=bird
PKG_VERSION:=1.3.3
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=bird-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=ftp://bird.network.cz/pub/bird

View File

@ -1,22 +1,21 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2010-2011 OpenWrt.org
START=50
# Birdloop is used to restart BIRD if it crashed. Unfortunately, it also
# hides and handles in the same manner start-time errors (like parse error
# in config file). Therefore, it is not used by default. If you want to
# use it, comment the first line and uncomment the second line in start().
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
start() {
/usr/sbin/bird4
# /usr/sbin/bird4loop
service_start /usr/sbin/bird4 -d
# ( SERVICE_MATCH_NAME=1 service_start /usr/sbin/bird4loop )
}
stop() {
killall bird4
sleep 1
# ( SERVICE_MATCH_NAME=1 service_stop /usr/sbin/bird4loop )
service_stop /usr/sbin/bird4
}
reload() {
killall -HUP bird4
service_reload /usr/sbin/bird4
}

View File

@ -2,11 +2,22 @@
BIRD=/usr/sbin/bird4
$BIRD -p
$BIRD -p || return 1
( until $BIRD -d "$@"
do
logger error BIRD4 died!
sleep 2
done; ) </dev/null >/dev/null 2> /dev/null &
. /lib/functions.sh
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
sig_handler() {
running=0
service_stop $BIRD
}
running=1
trap sig_handler INT
trap sig_handler TERM
while [ $running -gt 0 ]; do
service_check $BIRD || service_start $BIRD -d "$@"
sleep 3
done

View File

@ -1,22 +1,21 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2010-2011 OpenWrt.org
START=50
# Birdloop is used to restart BIRD if it crashed. Unfortunately, it also
# hides and handles in the same manner start-time errors (like parse error
# in config file). Therefore, it is not used by default. If you want to
# use it, comment the first line and uncomment the second line in start().
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
start() {
/usr/sbin/bird6
# /usr/sbin/bird6loop
service_start /usr/sbin/bird6 -d
# ( SERVICE_MATCH_NAME=1 service_start /usr/sbin/bird6loop )
}
stop() {
killall bird6
sleep 1
# ( SERVICE_MATCH_NAME=1 service_stop /usr/sbin/bird6loop )
service_stop /usr/sbin/bird6
}
reload() {
killall -HUP bird6
service_reload /usr/sbin/bird6
}

View File

@ -2,11 +2,22 @@
BIRD=/usr/sbin/bird6
$BIRD -p
$BIRD -p || return 1
( until $BIRD -d "$@"
do
logger error BIRD6 died!
sleep 2
done; ) </dev/null >/dev/null 2> /dev/null &
. /lib/functions.sh
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
sig_handler() {
running=0
service_stop $BIRD
}
running=1
trap sig_handler INT
trap sig_handler TERM
while [ $running -gt 0 ]; do
service_check $BIRD || service_start $BIRD -d "$@"
sleep 3
done