From 24b97579d20b6ac6df81654a953386d2912fc324 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 5 Dec 2019 18:35:36 +0100 Subject: hostapd: re-introduce process tracking Before commit 60fb4c92b6 ("hostapd: add ubus reload") netifd was tracking hostapd/wpa_supplicant and restarting wifi in case of a process crash. Restore this behaviour by tracking the PIDs of hostapd and wpa_supplicant. Also make sure hostapd and/or wpa_supplicant have been started before emmitting ubus calls to them using ubus wait_for. Signed-off-by: Daniel Golle --- package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh | 3 +++ 1 file changed, 3 insertions(+) (limited to 'package/kernel/mac80211/files/lib/netifd/wireless') diff --git a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh index dd2b09c4a0..06244bf0e3 100644 --- a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh +++ b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh @@ -940,7 +940,10 @@ drv_mac80211_setup() { } else add_ap=1 + ubus wait_for hostapd.$phy ubus call hostapd.${phy} config_add "{\"iface\":\"$primary_ap\", \"config\":\"${hostapd_conf_file}\"}" + local hostapd_pid=$(ubus call service list '{"name": "hostapd"}' | jsonfilter -l 1 -e "@['hostapd'].instances['hostapd-${phy}'].pid") + wireless_add_process "$hostapd_pid" "/usr/sbin/hostapd" 1 fi ret="$?" [ "$ret" != 0 ] && { -- cgit v1.2.3