1 #!/bin/sh /etc/rc.common
2 # Copyright (C) 2008-2013 OpenWrt.org
4 .
$IPKG_INSTROOT/lib
/functions
/olsrd.sh
10 CONF
=/var
/etc
/$OLSRD.conf
11 PID
=/var
/run
/olsrd6.pid
15 ubus
-t 15 wait_for network.interface.
$1 2>/dev
/null
21 config_foreach wait_for_network interface
22 rc_procd start_service
26 olsrd_generate_config
$OLSRD
31 local _respawn_timeout
34 config_get _respawn_timeout general respawn_timeout
35 config_get _respawn_retry general respawn_retry
37 procd_set_param
command "$BIN"
38 procd_append_param
command -f ${CONF}
39 procd_append_param
command -nofork
40 procd_append_param
command -pidfile ${PID}
42 # restart if olsrd dies
43 procd_set_param respawn
3600 $_respawn_timeout $_respawn_retry
45 # automatically restart olsrd if generated cfg has changed
46 procd_set_param
file $CONF
48 procd_set_param pidfile
$PID
52 olsrd_setup_smartgw_rules
56 # reload if config changed via uci
57 procd_add_reload_trigger
"olsrd6"
59 # restart on ifup interface events
60 for n
in $
(olsrd_list_configured_interfaces
$OLSRD); do
61 procd_add_reload_interface_trigger
$n /etc
/init.d
/$OLSRD reload