diff options
author | John Crispin <john@openwrt.org> | 2015-01-28 12:07:08 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2015-01-28 12:07:08 +0000 |
commit | e0aaac84349638c6fa0fff4a238d8e79caf52def (patch) | |
tree | 9f192c45188300a3a400823ebaba15b1c16af3aa /package/kernel/mac80211/files | |
parent | f28370039680f1feb9afcba6e7b6ebc3f0124373 (diff) | |
download | upstream-e0aaac84349638c6fa0fff4a238d8e79caf52def.tar.gz upstream-e0aaac84349638c6fa0fff4a238d8e79caf52def.tar.bz2 upstream-e0aaac84349638c6fa0fff4a238d8e79caf52def.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>
SVN-Revision: 44172
Diffstat (limited to 'package/kernel/mac80211/files')
-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 |