diff options
author | John Crispin <john@phrozen.org> | 2019-10-30 16:57:22 +0100 |
---|---|---|
committer | Daniel Golle <daniel@makrotopia.org> | 2019-11-12 11:52:26 +0100 |
commit | 60fb4c92b6b0d1582d31e02167b90b424185f3a2 (patch) | |
tree | f707a8fe5cc2e1abf21b51d38f9767f1b1d69996 /package/network/services/hostapd/files/hostapd.hotplug | |
parent | 155ede4f1fdb192b11f8ae2dbffda5f7ef4903bd (diff) | |
download | upstream-60fb4c92b6b0d1582d31e02167b90b424185f3a2.tar.gz upstream-60fb4c92b6b0d1582d31e02167b90b424185f3a2.tar.bz2 upstream-60fb4c92b6b0d1582d31e02167b90b424185f3a2.zip |
hostapd: add ubus reload
Add ubus interface to hostapd and wpa_supplicant to allow dynamically
reloading wiface configuration without having to restart the hostapd
process.
As a consequence, both hostapd and wpa_supplicant are now started
persistently on boot for each wifi device in the system and then
receive ubus calls adding, modifying or removing interface
configuration.
At a later stage it would be desirable to reduce the services to one
single instance managing all radios.
Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Diffstat (limited to 'package/network/services/hostapd/files/hostapd.hotplug')
-rw-r--r-- | package/network/services/hostapd/files/hostapd.hotplug | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/package/network/services/hostapd/files/hostapd.hotplug b/package/network/services/hostapd/files/hostapd.hotplug new file mode 100644 index 0000000000..d568b3c85a --- /dev/null +++ b/package/network/services/hostapd/files/hostapd.hotplug @@ -0,0 +1,14 @@ +#!/bin/sh + +[ ${ACTION} = "remove" -a -n "${DEVICENAME}" ] && { + kill $(cat /var/run/hostapd-${DEVICENAME}.pid) + rm -rf /var/run/hostapd-${DEVICENAME}.pid /var/run/hostapd-${DEVICENAME}/ + kill $(cat /var/run/wpa_supplicant-${DEVICENAME}.pid) + rm -rf /var/run/wpa_supplicant-${DEVICENAME}.pid /var/run/wpa_supplicant-${DEVICENAME}/ +} + +[ ${ACTION} = "add" -a -n "${DEVICENAME}" ] && { + /usr/sbin/hostapd -s -n ${DEVICENAME} -P /var/run/hostapd-${DEVICENAME}.pid -g /var/run/hostapd-${DEVICENAME}/global -B & + mkdir -p /var/run/wpa_supplicant-${DEVICENAME} + /usr/sbin/wpa_supplicant -s -n ${DEVICENAME} -P /var/run/wpa_supplicant-${DEVICENAME}.pid -g /var/run/wpa_supplicant-${DEVICENAME}/global -B & +} |