mac80211: fix fallback to macaddr

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>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44172 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
John Crispin 2015-01-28 12:07:08 +00:00
parent 27c1ce0c37
commit 49ec79e126

View File

@ -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