diff options
author | Nick Hainke <vincent@systemli.org> | 2021-06-18 11:06:38 +0300 |
---|---|---|
committer | Polynomdivision <vincent@systemli.org> | 2021-07-07 15:49:23 +0300 |
commit | 5311c844b62cf0043e1db02f8220c3a5c55f7329 (patch) | |
tree | 0708a046f6f7ac8afbf82f2e51eb55eef5fa1dab /olsrd | |
parent | 17b6e9982597fa6b6341a36d9e92fc75e5decb43 (diff) |
olsrd: fix olsrd starting before network
Should fix #691.
Sometimes the wifi interface is not ready before olsrd tries to access
it. This leads to warnings in the form of:
daemon.info olsrd: /etc/rc.d/S65olsrd: olsrd_write_interface()
Warning: Interface 'wireless0' not found, skipped
daemon.notice procd: /etc/rc.d/S65olsrd: olsrd: /etc/rc.d/S65olsrd:
olsrd_write_interface() Warning: Interface 'wireless0' not found, skipped
We make use of the "wait_for" procd command that allows us to wait for
the network before starting olsrd.
Tested-by: Noki
Signed-off-by: Nick Hainke <vincent@systemli.org>
Diffstat (limited to 'olsrd')
-rw-r--r-- | olsrd/files/olsrd4.init | 12 | ||||
-rw-r--r-- | olsrd/files/olsrd6.init | 11 |
2 files changed, 23 insertions, 0 deletions
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 |