summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau2025-09-29 07:45:45 +0000
committerFelix Fietkau2025-09-29 10:37:02 +0000
commite0a0d69a63ac4da57e941718806deb15ff0ca4a9 (patch)
tree64813ff503ba72f3e2806f0834c40524558b3fb7
parentd761f6a5a5dd6145f10fc68c40f1b3dca7e17c92 (diff)
downloadopenwrt-e0a0d69a63ac4da57e941718806deb15ff0ca4a9.tar.gz
wpa_supplicant: MLO bringup order
Do not allow hostapd phy state update to bring up links as long between mld_set and mld_start calls. Configuration on other PHYs could still be pending. Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r--package/network/services/hostapd/files/wpa_supplicant.uc5
1 files changed, 5 insertions, 0 deletions
diff --git a/package/network/services/hostapd/files/wpa_supplicant.uc b/package/network/services/hostapd/files/wpa_supplicant.uc
index cf31c1bd59..215aa62012 100644
--- a/package/network/services/hostapd/files/wpa_supplicant.uc
+++ b/package/network/services/hostapd/files/wpa_supplicant.uc
@@ -303,6 +303,9 @@ function mld_update_phy(phy, ifaces) {
}
function mld_start() {
+ if (wpas.data.mld_pending)
+ return;
+
wpas.printf(`Start pending MLD interfaces\n`);
let phy_list = {};
@@ -501,6 +504,7 @@ let main_obj = {
if (!req.args.config)
return libubus.STATUS_INVALID_ARGUMENT;
+ wpas.data.mld_pending = true;
mld_set_config(req.args.config);
return 0;
}
@@ -508,6 +512,7 @@ let main_obj = {
mld_start: {
args: {},
call: function(req) {
+ wpas.data.mld_pending = false;
mld_start();
return 0;
}