aboutsummaryrefslogtreecommitdiffstats
path: root/package/mac80211/files
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2010-01-17 01:52:45 +0000
committerFelix Fietkau <nbd@openwrt.org>2010-01-17 01:52:45 +0000
commitde1350d8d9ff31fe0b07579d3d496404c918764d (patch)
treea1c7b0049579874eb6112185eaea686ee664058d /package/mac80211/files
parent9169dca26cd449a06a15ebe6c03e81890c86ead7 (diff)
downloadupstream-de1350d8d9ff31fe0b07579d3d496404c918764d.tar.gz
upstream-de1350d8d9ff31fe0b07579d3d496404c918764d.tar.bz2
upstream-de1350d8d9ff31fe0b07579d3d496404c918764d.zip
mac80211: fix mac address handling for multiple phy/vif
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19177 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/files')
-rw-r--r--package/mac80211/files/lib/wifi/mac80211.sh6
1 files changed, 4 insertions, 2 deletions
diff --git a/package/mac80211/files/lib/wifi/mac80211.sh b/package/mac80211/files/lib/wifi/mac80211.sh
index 82ff958222..dea57223bc 100644
--- a/package/mac80211/files/lib/wifi/mac80211.sh
+++ b/package/mac80211/files/lib/wifi/mac80211.sh
@@ -81,6 +81,7 @@ enable_mac80211() {
find_mac80211_phy "$device" || return 0
config_get phy "$device" phy
local i=0
+ local macidx=0
fixed=""
[ -n "$country" ] && iw reg set "$country"
@@ -147,12 +148,13 @@ enable_mac80211() {
config_get vif_mac "$vif" macaddr
[ -n "$vif_mac" ] || {
- if [ "$i" -gt 0 ]; then
- offset="$(( 2 + $i * 4 ))"
+ if [ "$macidx" -gt 0 ]; then
+ offset="$(( 2 + $macidx * 4 ))"
else
offset="0"
fi
vif_mac="$( printf %02x $((0x$mac_1 + $offset)) ):$mac_2"
+ macidx="$(($macidx + 1))"
}
ifconfig "$ifname" hw ether "$vif_mac"