mesh: Remove HT IEs if HT is disabled

Previously, HT capability IE and HT information IE were included in
Beacon and Mesh Peering Open/Confirm frames even if HT is disabled with
disable_ht=1. This patch removes these.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
This commit is contained in:
Masashi Honma 2016-07-22 08:52:55 +09:00 committed by Jouni Malinen
parent 4ac2ea5738
commit 3388e7b96f
2 changed files with 13 additions and 0 deletions

View file

@ -3788,6 +3788,12 @@ static int nl80211_put_freq_params(struct nl_msg *msg,
wpa_printf(MSG_DEBUG, " * channel_type=%d", ct); wpa_printf(MSG_DEBUG, " * channel_type=%d", ct);
if (nla_put_u32(msg, NL80211_ATTR_WIPHY_CHANNEL_TYPE, ct)) if (nla_put_u32(msg, NL80211_ATTR_WIPHY_CHANNEL_TYPE, ct))
return -ENOBUFS; return -ENOBUFS;
} else {
wpa_printf(MSG_DEBUG, " * channel_type=%d",
NL80211_CHAN_NO_HT);
if (nla_put_u32(msg, NL80211_ATTR_WIPHY_CHANNEL_TYPE,
NL80211_CHAN_NO_HT))
return -ENOBUFS;
} }
return 0; return 0;
} }

View file

@ -1873,6 +1873,13 @@ void ibss_mesh_setup_freq(struct wpa_supplicant *wpa_s,
if (!mode) if (!mode)
return; return;
#ifdef CONFIG_HT_OVERRIDES
if (ssid->disable_ht) {
freq->ht_enabled = 0;
return;
}
#endif /* CONFIG_HT_OVERRIDES */
freq->ht_enabled = ht_supported(mode); freq->ht_enabled = ht_supported(mode);
if (!freq->ht_enabled) if (!freq->ht_enabled)
return; return;