diff options
author | Daniel Golle <daniel@makrotopia.org> | 2021-01-12 00:29:18 +0000 |
---|---|---|
committer | Daniel Golle <daniel@makrotopia.org> | 2021-01-14 00:52:50 +0000 |
commit | d9d698843469ee24de01fbb498bd8690d69b8b61 (patch) | |
tree | d550833284aa318ceade179901e65007cb7c6a0d | |
parent | 1e2d162092dd54fc7b285dd89014958786dc2b5a (diff) | |
download | upstream-d9d698843469ee24de01fbb498bd8690d69b8b61.tar.gz upstream-d9d698843469ee24de01fbb498bd8690d69b8b61.tar.bz2 upstream-d9d698843469ee24de01fbb498bd8690d69b8b61.zip |
mac80211: improve error handling when adding hostapd config
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
-rw-r--r-- | package/kernel/mac80211/Makefile | 2 | ||||
-rw-r--r-- | package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh | 14 |
2 files changed, 8 insertions, 8 deletions
diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile index e03c91e9c4..096225754c 100644 --- a/package/kernel/mac80211/Makefile +++ b/package/kernel/mac80211/Makefile @@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=mac80211 PKG_VERSION:=5.8.18-1 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.8.18/ PKG_HASH:=f04a8172423c6a945fc7d9844b04f33fda9ae574e552f8f18ee3bdfcfb494563 diff --git a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh index 7eea198cd9..b4008f3d58 100644 --- a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh +++ b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh @@ -1019,14 +1019,14 @@ drv_mac80211_setup() { if [ "$no_reload" != "0" ]; then add_ap=1 ubus wait_for hostapd - local hostapd_pid=$(ubus call hostapd config_add "{\"iface\":\"$primary_ap\", \"config\":\"${hostapd_conf_file}\"}" | jsonfilter -l 1 -e @.pid) - wireless_add_process "$hostapd_pid" "/usr/sbin/hostapd" 1 1 + local hostapd_res="$(ubus call hostapd config_add "{\"iface\":\"$primary_ap\", \"config\":\"${hostapd_conf_file}\"}")" + ret="$?" + [ "$ret" != 0 -o -z "$hostapd_res" ] && { + wireless_setup_failed HOSTAPD_START_FAILED + return + } + wireless_add_process "$(jsonfilter -s "$hostapd_res" -l 1 -e @.pid)" "/usr/sbin/hostapd" 1 1 fi - ret="$?" - [ "$ret" != 0 ] && { - wireless_setup_failed HOSTAPD_START_FAILED - return - } } uci -q -P /var/state set wireless._${phy}.aplist="${NEWAPLIST}" uci -q -P /var/state set wireless._${phy}.md5="${NEW_MD5}" |