diff options
| author | Felix Fietkau | 2024-09-21 18:13:51 +0000 |
|---|---|---|
| committer | Felix Fietkau | 2024-09-21 18:14:51 +0000 |
| commit | b4e7682c548e6d2f508f26a48c3e41fe34a4fc76 (patch) | |
| tree | 93a6af6bf4d0c5c175e7af4597ed299138ea6711 | |
| parent | 1a288670d99012e2921c2a8906e7a61dc8e89e72 (diff) | |
| download | openwrt-b4e7682c548e6d2f508f26a48c3e41fe34a4fc76.tar.gz | |
hostapd: fix num_global_macaddr and mbssid config handling
Store the config values in the correct field and apply them on restart too
Signed-off-by: Felix Fietkau <nbd@nbd.name>
| -rw-r--r-- | package/network/services/hostapd/files/hostapd.uc | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/package/network/services/hostapd/files/hostapd.uc b/package/network/services/hostapd/files/hostapd.uc index e30e3e9b02..6774fbf3ba 100644 --- a/package/network/services/hostapd/files/hostapd.uc +++ b/package/network/services/hostapd/files/hostapd.uc @@ -229,6 +229,16 @@ function iface_pending_init(phydev, config) pending.next(); } +function iface_macaddr_init(phydev, config, macaddr_list) +{ + let macaddr_data = { + num_global: config.num_global_macaddr ?? 1, + mbssid: config.mbssid ?? 0, + }; + + return phydev.macaddr_init(macaddr_list, macaddr_data); +} + function iface_restart(phydev, config, old_config) { let phy = phydev.name; @@ -246,7 +256,7 @@ function iface_restart(phydev, config, old_config) return; } - phydev.macaddr_init(iface_config_macaddr_list(config)); + iface_macaddr_init(phydev, config, iface_config_macaddr_list(config)); for (let i = 0; i < length(config.bss); i++) { let bss = config.bss[i]; if (bss.default_macaddr) @@ -500,11 +510,7 @@ function iface_reload_config(phydev, config, old_config) } // Step 6: assign BSSID for newly created interfaces - let macaddr_data = { - num_global: config.num_global_macaddr ?? 1, - mbssid: config.mbssid ?? 0, - }; - macaddr_list = phydev.macaddr_init(macaddr_list, macaddr_data); + macaddr_list = iface_macaddr_init(phydev, config, macaddr_list); for (let i = 0; i < length(config.bss); i++) { if (bss_list[i]) continue; @@ -675,7 +681,7 @@ function iface_load_config(filename) if (val[0] == "#num_global_macaddr" || val[0] == "mbssid") - config[val[0]] = int(val[1]); + config[substr(val[0], 1)] = int(val[1]); push(config.radio.data, line); } |