travelmate: update 0.3.0
[feed/packages.git] / net / travelmate / files / travelmate.init
1 #!/bin/sh /etc/rc.common
2
3 START=85
4 USE_PROCD=1
5
6 trm_script="/usr/bin/travelmate.sh"
7 trm_iface="$(uci -q get travelmate.global.trm_iface)"
8
9 boot()
10 {
11 ubus -t 30 wait_for network.interface
12 rc_procd start_service
13 }
14
15 start_service()
16 {
17 procd_open_instance "travelmate"
18 procd_set_param env trm_procd="true"
19 procd_set_param command "${trm_script}" "${@}"
20 procd_set_param stdout 1
21 procd_set_param stderr 1
22 procd_close_instance
23 }
24
25 service_triggers()
26 {
27 local iface
28
29 procd_add_config_trigger "config.change" "travelmate" /etc/init.d/travelmate start
30 if [ -z "${trm_iface}" ]
31 then
32 procd_add_raw_trigger "interface.*.down" 1000 /etc/init.d/travelmate start
33 else
34 for iface in ${trm_iface}
35 do
36 procd_add_interface_trigger "interface.*.down" "${iface}" /etc/init.d/travelmate start
37 done
38 fi
39 }