diff options
author | Felix Fietkau <nbd@openwrt.org> | 2015-11-07 12:52:01 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2015-11-07 12:52:01 +0000 |
commit | da75ff37f1081e91082e812a54f044a526e6f097 (patch) | |
tree | b1965ded9a38a0876130d3607c1efa2757c0c147 /package/kernel/mac80211 | |
parent | 9d8408b1d4ef01615462c69a023d914684188f86 (diff) | |
download | master-187ad058-da75ff37f1081e91082e812a54f044a526e6f097.tar.gz master-187ad058-da75ff37f1081e91082e812a54f044a526e6f097.tar.bz2 master-187ad058-da75ff37f1081e91082e812a54f044a526e6f097.zip |
mac80211: set mcast-rate for mesh point interfaces
In order to set the multicast rate for mesh point interfaces the "mesh join"
was made explicit and moved to mac80211_setup_vif(), similar to how it is
done for IBSS interfaces.
Previously, the mesh join was made implicit in case authentication (i.e.
$key) was not used when creating the interface in mac80211_prepare_vif(),
while using authentication would create the interface first, then join
later in mac80211_setup_vif() by starting authsae.
Signed-off-by: Nils Schneider <nils@nilsschneider.net>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@47408 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/mac80211')
-rw-r--r-- | package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh index 2a8d2f9430..8d31a80a2c 100644 --- a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh +++ b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh @@ -455,12 +455,7 @@ mac80211_prepare_vif() { } ;; mesh) - json_get_vars key mesh_id - if [ -n "$key" ]; then - iw phy "$phy" interface add "$ifname" type mp - else - iw phy "$phy" interface add "$ifname" type mp mesh_id "$mesh_id" - fi + iw phy "$phy" interface add "$ifname" type mp ;; monitor) iw phy "$phy" interface add "$ifname" type monitor @@ -603,6 +598,13 @@ mac80211_setup_vif() { wireless_vif_parse_encryption mac80211_setup_supplicant || failed=1 fi + else + json_get_vars mesh_id mcast_rate + + mcval= + [ -n "$mcast_rate" ] && wpa_supplicant_add_rate mcval "$mcast_rate" + + iw dev "$ifname" mesh join "$mesh_id" ${mcval:+mcast-rate $mcval} fi for var in $MP_CONFIG_INT $MP_CONFIG_BOOL $MP_CONFIG_STRING; do |