diff --git a/ffho/ffho-autoupdater-wifi-fallback/luasrc/lib/gluon/upgrade/510-autoupdater-wifi-fallback b/ffho/ffho-autoupdater-wifi-fallback/luasrc/lib/gluon/upgrade/510-autoupdater-wifi-fallback index cd5e78f003f53836b0ea54b0a7e1830333f3521c..dc272a24818485b367c72cc11c945a0dae739f1a 100755 --- a/ffho/ffho-autoupdater-wifi-fallback/luasrc/lib/gluon/upgrade/510-autoupdater-wifi-fallback +++ b/ffho/ffho-autoupdater-wifi-fallback/luasrc/lib/gluon/upgrade/510-autoupdater-wifi-fallback @@ -17,10 +17,19 @@ uci:section('autoupdater-wifi-fallback','autoupdater-wifi-fallback','settings', ) uci:delete('wireless', 'fallback') - uci:delete('network','fallback') +uci:delete('network','fallback6') + uci:section('network', 'interface', 'fallback', { + proto = 'dhcp', + peerdns = 1, + sourcefilter = 0, + } +) +uci:section('network', 'interface', 'fallback6', + { + ifname = '@fallback', proto = 'dhcpv6', peerdns = 1, sourcefilter = 0, diff --git a/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/lib/lua/autoupdater-wifi-fallback/util.lua b/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/lib/lua/autoupdater-wifi-fallback/util.lua index 6f62e6dea4c56adc8be260d7095fb83034614da5..f77388a0e61d58f5ec7c9315a1fff91db080f874 100644 --- a/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/lib/lua/autoupdater-wifi-fallback/util.lua +++ b/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/lib/lua/autoupdater-wifi-fallback/util.lua @@ -7,7 +7,7 @@ function get_available_wifi_networks() uci:foreach('wireless', 'wifi-device', function(s) - list[s['.name']] = {} + radios[s['.name']] = {} end ) diff --git a/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/sbin/autoupdater-wifi-fallback b/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/sbin/autoupdater-wifi-fallback index ec9fc47fd0207947bbaf085d88d0391d827d51f6..9460deaccd3cd9eeefdd3659b23614e885fe57dc 100755 --- a/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/sbin/autoupdater-wifi-fallback +++ b/ffho/ffho-autoupdater-wifi-fallback/luasrc/usr/sbin/autoupdater-wifi-fallback @@ -131,7 +131,9 @@ if (force or preflight_check()) and not connectivity_check() then for radio, netlist in pairs(get_available_wifi_networks()) do for _, net in ipairs(netlist) do switch_to_fallback_mode(radio, net.ssid, net.bssid) - run_autoupdater() + if run_autoupdater() == 0 then + break + end end end -- this is only reached if no updated happened