[openwrt/openwrt] wifi-scripts: fix wdev fallback for mesh interfaces

LEDE Commits lede-commits at lists.infradead.org
Sat Dec 27 03:20:44 PST 2025


nick pushed a commit to openwrt/openwrt.git, branch openwrt-25.12:
https://git.openwrt.org/a32c5c69dcf3d95ee0fafb415d2f4e152bf15469

commit a32c5c69dcf3d95ee0fafb415d2f4e152bf15469
Author: Nick Hainke <vincent at systemli.org>
AuthorDate: Thu Dec 25 18:41:10 2025 +0100

    wifi-scripts: fix wdev fallback for mesh interfaces
    
    The previous wdev.uc invocation failed for mesh interfaces.
    Rewrite it as a loop so the mesh interface is created correctly
    when no wpa_supplicant mesh support is installed.
    
    Link: https://github.com/openwrt/openwrt/pull/21291
    (cherry picked from commit a18ef412ae73b605a99c319e02bcff9a63b3bfa8)
    Link: https://github.com/openwrt/openwrt/pull/21301
    Signed-off-by: Nick Hainke <vincent at systemli.org>
---
 .../wifi-scripts/files-ucode/lib/netifd/wireless/mac80211.sh   | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/package/network/config/wifi-scripts/files-ucode/lib/netifd/wireless/mac80211.sh b/package/network/config/wifi-scripts/files-ucode/lib/netifd/wireless/mac80211.sh
index 8aba81436e..dcfdcd2cc8 100755
--- a/package/network/config/wifi-scripts/files-ucode/lib/netifd/wireless/mac80211.sh
+++ b/package/network/config/wifi-scripts/files-ucode/lib/netifd/wireless/mac80211.sh
@@ -294,7 +294,15 @@ function setup() {
 	if (fs.access('/usr/sbin/hostapd', 'x'))
 		hostapd.setup(data);
 
-	system(`ucode /usr/share/hostap/wdev.uc ${data.phy}${data.phy_suffix} set_config '${printf("%J", wdev_data)}' ${join(' ', active_ifnames)}`);
+	for (let ifname in active_ifnames) {
+		if (!wdev_data[ifname])
+			continue;
+
+		let if_config = {
+			[ifname]: wdev_data[ifname]
+		};
+		system(`ucode /usr/share/hostap/wdev.uc ${data.phy}${data.phy_suffix} set_config '${if_config}'`);
+	}
 
 	if (length(supplicant_data) > 0)
 		supplicant.start(data);




More information about the lede-commits mailing list