fix: self-heal radio1 AP after stock daemon wireless writes
This commit is contained in:
@@ -1682,6 +1682,11 @@ def h_pineap_wifi_get_ap(ctx):
|
||||
pinecfg = data2 if status2 == 200 and isinstance(data2, dict) else {}
|
||||
pool = _uci_section('pineapd.@ssidpool[0]')
|
||||
radio1 = _uci_wifi_iface('radio1')
|
||||
for name in ('wlan1open', 'wlan1wpa'):
|
||||
cfg = _uci_wifi_iface(name)
|
||||
if cfg and cfg.get('disabled') != '1' and not os.path.exists('/sys/class/net/%s' % name):
|
||||
device_run(['wifi', 'reload'])
|
||||
break
|
||||
return 200, {
|
||||
'open': {
|
||||
'enabled': open_cfg.get('disabled') == '0',
|
||||
@@ -1793,6 +1798,7 @@ def _apply_radio1_ap(openap, wpa):
|
||||
device_run(['uci', 'set', 'wireless.%s=wifi-iface' % iface])
|
||||
device_run(['uci', 'set', 'wireless.%s.device=radio1' % iface])
|
||||
device_run(['uci', 'set', 'wireless.%s.mode=ap' % iface])
|
||||
device_run(['uci', 'set', 'wireless.%s.ifname=%s' % (iface, iface)])
|
||||
device_run(['uci', 'set', 'wireless.%s.ssid=%s' % (iface, cfg.get('ssid') or '')])
|
||||
device_run(['uci', 'set', 'wireless.%s.hidden=%d' % (iface, 1 if cfg.get('hidden') else 0)])
|
||||
device_run(['uci', 'set', 'wireless.%s.channel=%d' % (iface, int(cfg.get('channel')))])
|
||||
|
||||
Reference in New Issue
Block a user