mesh: Use correct rate in HT and legacy mixed environment
Let mesh STA A be a STA which has config disable_ht=1. Let mesh STA B be a STA which has config disable_ht=0. The mesh STA A and B was connected. Previously, the mesh STA A sent frame with HT rate even though its HT was disabled. This commit fixes the issue by checking the local BSS HT configuration. Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
This commit is contained in:
parent
025c6a47fb
commit
84ea61cffe
2 changed files with 4 additions and 3 deletions
|
@ -340,8 +340,8 @@ u16 copy_sta_ht_capab(struct hostapd_data *hapd, struct sta_info *sta,
|
|||
* that did not specify a valid WMM IE in the (Re)Association Request
|
||||
* frame.
|
||||
*/
|
||||
if (!ht_capab ||
|
||||
!(sta->flags & WLAN_STA_WMM) || hapd->conf->disable_11n) {
|
||||
if (!ht_capab || !(sta->flags & WLAN_STA_WMM) ||
|
||||
!hapd->iconf->ieee80211n || hapd->conf->disable_11n) {
|
||||
sta->flags &= ~WLAN_STA_HT;
|
||||
os_free(sta->ht_capabilities);
|
||||
sta->ht_capabilities = NULL;
|
||||
|
|
|
@ -684,7 +684,8 @@ static struct sta_info * mesh_mpm_add_peer(struct wpa_supplicant *wpa_s,
|
|||
|
||||
oper = (struct ieee80211_ht_operation *) elems->ht_operation;
|
||||
if (oper &&
|
||||
!(oper->ht_param & HT_INFO_HT_PARAM_STA_CHNL_WIDTH)) {
|
||||
!(oper->ht_param & HT_INFO_HT_PARAM_STA_CHNL_WIDTH) &&
|
||||
sta->ht_capabilities) {
|
||||
wpa_msg(wpa_s, MSG_DEBUG, MACSTR
|
||||
" does not support 40 MHz bandwidth",
|
||||
MAC2STR(sta->addr));
|
||||
|
|
Loading…
Reference in a new issue