mirror of
https://github.com/immortalwrt/immortalwrt.git
synced 2025-08-14 14:19:53 +08:00
wifi-scripts: correctly set basic-rates with wpa_supplicant
Correctly load the list of basic_rates from UCI. basic-rates shall be stored as a option-list. The current code did not retrieve this list correctly. wpa_supplicant uses a different config option to set basic-rates when operating in mesh-mode. Use the correct config key and calculation for mesh-interfaces. Signed-off-by: David Bauer <mail@david-bauer.net>
This commit is contained in:
@ -1317,11 +1317,13 @@ wpa_supplicant_add_network() {
|
|||||||
|
|
||||||
json_get_vars \
|
json_get_vars \
|
||||||
ssid bssid key \
|
ssid bssid key \
|
||||||
basic_rate mcast_rate \
|
mcast_rate \
|
||||||
ieee80211w ieee80211r fils ocv \
|
ieee80211w ieee80211r fils ocv \
|
||||||
multi_ap \
|
multi_ap \
|
||||||
default_disabled
|
default_disabled
|
||||||
|
|
||||||
|
json_get_values basic_rate_list basic_rate
|
||||||
|
|
||||||
case "$auth_type" in
|
case "$auth_type" in
|
||||||
sae|owe|eap2|eap192)
|
sae|owe|eap2|eap192)
|
||||||
set_default ieee80211w 2
|
set_default ieee80211w 2
|
||||||
@ -1582,12 +1584,21 @@ wpa_supplicant_add_network() {
|
|||||||
[ -n "$bssid_blacklist" ] && append network_data "bssid_blacklist=$bssid_blacklist" "$N$T"
|
[ -n "$bssid_blacklist" ] && append network_data "bssid_blacklist=$bssid_blacklist" "$N$T"
|
||||||
[ -n "$bssid_whitelist" ] && append network_data "bssid_whitelist=$bssid_whitelist" "$N$T"
|
[ -n "$bssid_whitelist" ] && append network_data "bssid_whitelist=$bssid_whitelist" "$N$T"
|
||||||
|
|
||||||
[ -n "$basic_rate" ] && {
|
[ -n "$basic_rate_list" ] && {
|
||||||
local br rate_list=
|
local br rate rate_list=
|
||||||
for br in $basic_rate; do
|
|
||||||
wpa_supplicant_add_rate rate_list "$br"
|
if [ "$mode" = mesh ]; then
|
||||||
done
|
for br in $basic_rate_list; do
|
||||||
[ -n "$rate_list" ] && append network_data "rates=$rate_list" "$N$T"
|
rate="$(($br / 100))"
|
||||||
|
append rate_list "$rate" " "
|
||||||
|
done
|
||||||
|
[ -n "$rate_list" ] && append network_data "mesh_basic_rates=$rate_list" "$N$T"
|
||||||
|
else
|
||||||
|
for br in $basic_rate_list; do
|
||||||
|
wpa_supplicant_add_rate rate_list "$br"
|
||||||
|
done
|
||||||
|
[ -n "$rate_list" ] && append network_data "rates=$rate_list" "$N$T"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
[ -n "$mcast_rate" ] && {
|
[ -n "$mcast_rate" ] && {
|
||||||
|
Reference in New Issue
Block a user