Skip to content

Commit

Permalink
hostapd: fix num_global_macaddr and mbssid config handling
Browse files Browse the repository at this point in the history
Store the config values in the correct field and apply them on restart too

Signed-off-by: Felix Fietkau <[email protected]>
  • Loading branch information
nbd168 committed Sep 21, 2024
1 parent 1a28867 commit b4e7682
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions package/network/services/hostapd/files/hostapd.uc
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -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)
Expand Down Expand Up @@ -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;
Expand Down Expand Up @@ -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);
}
Expand Down

0 comments on commit b4e7682

Please sign in to comment.