diff --git a/olsrd/files/olsrd4.init b/olsrd/files/olsrd4.init index ca71a42..ceb553a 100644 --- a/olsrd/files/olsrd4.init +++ b/olsrd/files/olsrd4.init @@ -10,6 +10,18 @@ OLSRD=olsrd CONF=/var/etc/$OLSRD.conf PID=/var/run/olsrd.pid +wait_for_network() +{ + ubus -t 15 wait_for network.interface.$1 2>/dev/null +} + +boot() +{ + config_load network + config_foreach wait_for_network interface + rc_procd start_service +} + start_service() { olsrd_generate_config $OLSRD diff --git a/olsrd/files/olsrd6.init b/olsrd/files/olsrd6.init index 8b81019..6d0b59b 100644 --- a/olsrd/files/olsrd6.init +++ b/olsrd/files/olsrd6.init @@ -10,6 +10,17 @@ OLSRD=olsrd6 CONF=/var/etc/$OLSRD.conf PID=/var/run/olsrd6.pid +wait_for_network() +{ + ubus -t 15 wait_for network.interface.$1 2>/dev/null +} + +boot() +{ + config_load network + config_foreach wait_for_network interface + rc_procd start_service +} start_service() { olsrd_generate_config $OLSRD