diff options
author | John Crispin <blogic@openwrt.org> | 2015-01-28 12:07:08 +0000 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2015-01-28 12:07:08 +0000 |
commit | 49ec79e12616a1b221acef6a1bf111c86fc329c5 (patch) | |
tree | f8edf0524e982284f23a287aa61eee4f4663b921 /package/kernel/mac80211 | |
parent | 27c1ce0c378467fb21e04248c19894d605204fa7 (diff) | |
download | upstream-49ec79e12616a1b221acef6a1bf111c86fc329c5.tar.gz upstream-49ec79e12616a1b221acef6a1bf111c86fc329c5.tar.bz2 upstream-49ec79e12616a1b221acef6a1bf111c86fc329c5.zip |
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
Diffstat (limited to 'package/kernel/mac80211')
-rw-r--r-- | package/kernel/mac80211/files/lib/wifi/mac80211.sh | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/package/kernel/mac80211/files/lib/wifi/mac80211.sh b/package/kernel/mac80211/files/lib/wifi/mac80211.sh index 0b662eb4b1..a7c4d2dbc2 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 |