forked from Minki/linux
mac80211: check hostapd configuration parsing twt requests
Check twt_responder in ieee80211_process_rx_twt_action routine in order to take into account the case where twt has been disabled in hostapd configuration. Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Link: https://lore.kernel.org/r/516057fe4ca73ad257e8c2762e25f4b7872957fc.1630051438.git.lorenzo@kernel.org Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
3df15f3451
commit
68ba1131d4
@ -3216,10 +3216,7 @@ static bool
|
||||
ieee80211_process_rx_twt_action(struct ieee80211_rx_data *rx)
|
||||
{
|
||||
struct ieee80211_mgmt *mgmt = (struct ieee80211_mgmt *)rx->skb->data;
|
||||
struct ieee80211_rx_status *status = IEEE80211_SKB_RXCB(rx->skb);
|
||||
struct ieee80211_sub_if_data *sdata = rx->sdata;
|
||||
const struct ieee80211_sta_he_cap *hecap;
|
||||
struct ieee80211_supported_band *sband;
|
||||
|
||||
/* TWT actions are only supported in AP for the moment */
|
||||
if (sdata->vif.type != NL80211_IFTYPE_AP)
|
||||
@ -3228,14 +3225,7 @@ ieee80211_process_rx_twt_action(struct ieee80211_rx_data *rx)
|
||||
if (!rx->local->ops->add_twt_setup)
|
||||
return false;
|
||||
|
||||
sband = rx->local->hw.wiphy->bands[status->band];
|
||||
hecap = ieee80211_get_he_iftype_cap(sband,
|
||||
ieee80211_vif_type_p2p(&sdata->vif));
|
||||
if (!hecap)
|
||||
return false;
|
||||
|
||||
if (!(hecap->he_cap_elem.mac_cap_info[0] &
|
||||
IEEE80211_HE_MAC_CAP0_TWT_RES))
|
||||
if (!sdata->vif.bss_conf.twt_responder)
|
||||
return false;
|
||||
|
||||
if (!rx->sta)
|
||||
|
Loading…
Reference in New Issue
Block a user