Browse Source

hostapd: restart wifi when the bssid of the first interface changes

Full restart is necessary, since the bss wdev is not re-created

Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau 2 years ago
parent
commit
f1c4751ba6
1 changed files with 6 additions and 0 deletions
  1. 6 0
      package/network/services/hostapd/files/hostapd.uc

+ 6 - 0
package/network/services/hostapd/files/hostapd.uc

@@ -136,6 +136,9 @@ function iface_reload_config(phy, config, old_config)
 		if (phy_is_fullmac(phy))
 			return false;
 
+		if (config.bss[0].bssid != old_config.bss[0].bssid)
+			return false;
+
 		hostapd.printf(`Reload config for bss '${config.bss[0].ifname}' on phy '${phy}'`);
 		if (iface.bss[0].set_config(config_inline, 0) < 0) {
 			hostapd.printf(`Failed to set config`);
@@ -269,6 +272,9 @@ function iface_load_config(filename)
 		if (!val[0])
 			continue;
 
+		if (val[0] == "bssid")
+			bss.bssid = val[1];
+
 		if (val[0] == "bss") {
 			bss = config_add_bss(config, val[1]);
 			continue;