X-Git-Url: http://git.ozo.com/?a=blobdiff_plain;f=net%2Fbird%2Ffiles%2Fbird4loop;h=5dd6b95c926b715f2490fe5f4c1d4efefc0955b4;hb=858c4dcbfc5d06f449b07c0edf4e83c01960377c;hp=9d9b80dd8c6fc8d116b09e7dfbe350aa37ad3aad;hpb=da5a45e4fac4ff9b423441aa493bfc4614981dfb;p=lede-routing%2F.git diff --git a/net/bird/files/bird4loop b/net/bird/files/bird4loop index 9d9b80d..5dd6b95 100644 --- a/net/bird/files/bird4loop +++ b/net/bird/files/bird4loop @@ -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 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