Make sure wifi is up before letting OLSRD run

This commit is contained in:
Tim Wilkinson 2021-11-06 00:23:39 -07:00 committed by Joe AE6XE
parent 837a3c602c
commit ce296c94d4
1 changed files with 11 additions and 0 deletions

View File

@ -56,6 +56,17 @@ if ( $UCI_CONF_FILE eq "olsrd6" ) {
exit 0;
}
# Make sure wifi exists and is up to avoid OLSRD nameservice problems later.
# This is not the perfect place to do this, but it avoids changing more core functions.
if (system "ubus -t 10 wait_for network.interface.wifi" == 0)
{
for ($i = 0; $i < 10; $i++)
{
chomp($wifiup = `ubus -S call network.interface.wifi status | jsonfilter -e '@.up'`);
last if ($wifiup eq "true");
sleep 2;
}
}
@names = @hosts = @services = @tunnels = ();