summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau2025-10-30 19:44:38 +0000
committerFelix Fietkau2025-10-31 20:22:35 +0000
commit3ab2f32006514549525e4d29136eab813017d96e (patch)
tree60ac593613086ab66c08f06535cce9dc409cb4a0
parent0d189171e13b0e6a1131ebe312d27359b8963b85 (diff)
downloadopenwrt-3ab2f32006514549525e4d29136eab813017d96e.tar.gz
wpa_supplicant: add support for issuing control socket commands via ubus
This makes it possible to have more flexible control over the supplicant without having to install wpa_cli. Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r--package/network/services/hostapd/files/wpa_supplicant.uc14
1 files changed, 14 insertions, 0 deletions
diff --git a/package/network/services/hostapd/files/wpa_supplicant.uc b/package/network/services/hostapd/files/wpa_supplicant.uc
index b77e0648e9..20613ae702 100644
--- a/package/network/services/hostapd/files/wpa_supplicant.uc
+++ b/package/network/services/hostapd/files/wpa_supplicant.uc
@@ -773,6 +773,20 @@ function iface_ubus_add(ifname)
return 0;
},
},
+ control: {
+ args: {
+ command: ""
+ },
+ call: (req) => {
+ let iface = wpas.interfaces[ifname];
+ if (!iface)
+ return libubus.STATUS_NOT_FOUND;
+
+ return {
+ result: iface.ctrl(req.args.command)
+ };
+ },
+ },
});
wpas.data.iface_ubus[ifname] = obj;
}