hostapd: re-introduce process tracking
[openwrt/staging/dedeckeh.git] / package / network / services / hostapd / files / hostapd.sh
index f03b98ff85b8732bf5439d5b61bf9b58d725a7ba..4bf6a6c9712785f40d059445f80f19d4f2992f4b 100644 (file)
@@ -958,6 +958,7 @@ wpa_supplicant_run() {
 
        _wpa_supplicant_common "$ifname"
 
+       ubus wait_for wpa_supplicant.$phy
        ubus call wpa_supplicant.$phy config_add "{ \
                \"driver\": \"${_w_driver:-wext}\", \"ctrl\": \"$_rpath\", \
                \"iface\": \"$ifname\", \"config\": \"$_config\" \
@@ -969,6 +970,9 @@ wpa_supplicant_run() {
 
        [ "$ret" != 0 ] && wireless_setup_vif_failed WPA_SUPPLICANT_FAILED
 
+       local supplicant_pid=$(ubus call service list '{"name": "hostapd"}' | jsonfilter -l 1 -e "@['hostapd'].instances['supplicant-${phy}'].pid")
+       wireless_add_process "$supplicant_pid" "/usr/sbin/wpa_supplicant" 1
+
        return $ret
 }