+ local no_reload=1
+ if [ -n "$(ubus list | grep hostapd.$primary_ap)" ]; then
+ [ "${NEW_MD5}" = "${OLD_MD5}" ] || {
+ ubus call hostapd.$primary_ap reload
+ no_reload=$?
+ if [ "$no_reload" != "0" ]; then
+ mac80211_vap_cleanup hostapd "${OLDAPLIST}"
+ mac80211_vap_cleanup wpa_supplicant "$(uci -q -P /var/state get wireless._${phy}.splist)"
+ mac80211_vap_cleanup none "$(uci -q -P /var/state get wireless._${phy}.umlist)"
+ sleep 2
+ mac80211_iw_interface_add "$phy" "${NEWAPLIST%% *}" __ap
+ for_each_interface "sta adhoc mesh monitor" mac80211_prepare_vif
+ fi
+ }
+ fi
+ if [ "$no_reload" != "0" ]; then
+ add_ap=1
+ ubus wait_for hostapd
+ ubus call hostapd 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'].pid")
+ wireless_add_process "$hostapd_pid" "/usr/sbin/hostapd" 1
+ fi