[OpenWrt-Devel] mac80211: fix fallback to macaddr
diff mbox

Message ID BLU436-SMTP16850921C09105C382CE535AC370@phx.gbl
State Accepted
Headers show

Commit Message

Nathan Hintz Jan. 24, 2015, 5:04 a.m. UTC
If '/sys/class/ieee80211/phyN' is not a symlink, the call to readlink
produces either an empty path (if /sys/class/ieee80211/phyN/device doesn't
exist) or a path that begins with '/sys/class/ieee80211' (which does not
work with the subsequent line to strip '/sys/devices' from the beginning of
the path).  Modify the checks to detect these conditions, and fallback to
using the macaddr.

Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
---
 package/kernel/mac80211/files/lib/wifi/mac80211.sh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Patch
diff mbox

diff --git a/package/kernel/mac80211/files/lib/wifi/mac80211.sh b/package/kernel/mac80211/files/lib/wifi/mac80211.sh
index 0b662eb..a7c4d2d 100644
--- a/package/kernel/mac80211/files/lib/wifi/mac80211.sh
+++ b/package/kernel/mac80211/files/lib/wifi/mac80211.sh
@@ -94,8 +94,12 @@  detect_mac80211() {
 
 		[ -n $htmode ] && append ht_capab "	option htmode	$htmode" "$N"
 
-		if [ -x /usr/bin/readlink ]; then
+		if [ -x /usr/bin/readlink -a -h /sys/class/ieee80211/${dev} ]; then
 			path="$(readlink -f /sys/class/ieee80211/${dev}/device)"
+		else
+			path=""
+		fi
+		if [ -n "$path" ]; then
 			path="${path##/sys/devices/}"
 			dev_id="	option path	'$path'"
 		else