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>

SVN-Revision: 47408
v19.07.3_mercusys_ac12_duma
Felix Fietkau 9 years ago
parent b95aed986a
commit 08f1e1b3ac

@ -455,12 +455,7 @@ mac80211_prepare_vif() {
} }
;; ;;
mesh) mesh)
json_get_vars key mesh_id iw phy "$phy" interface add "$ifname" type mp
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
;; ;;
monitor) monitor)
iw phy "$phy" interface add "$ifname" type monitor iw phy "$phy" interface add "$ifname" type monitor
@ -603,6 +598,13 @@ mac80211_setup_vif() {
wireless_vif_parse_encryption wireless_vif_parse_encryption
mac80211_setup_supplicant || failed=1 mac80211_setup_supplicant || failed=1
fi 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 fi
for var in $MP_CONFIG_INT $MP_CONFIG_BOOL $MP_CONFIG_STRING; do for var in $MP_CONFIG_INT $MP_CONFIG_BOOL $MP_CONFIG_STRING; do

Loading…
Cancel
Save