|
@@ -77,7 +77,8 @@ static void ieee80211_send_addba_request(struct ieee80211_sub_if_data *sdata,
|
|
memcpy(mgmt->da, da, ETH_ALEN);
|
|
memcpy(mgmt->da, da, ETH_ALEN);
|
|
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
|
memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
|
|
if (sdata->vif.type == NL80211_IFTYPE_AP ||
|
|
if (sdata->vif.type == NL80211_IFTYPE_AP ||
|
|
- sdata->vif.type == NL80211_IFTYPE_AP_VLAN)
|
|
|
|
|
|
+ sdata->vif.type == NL80211_IFTYPE_AP_VLAN ||
|
|
|
|
+ sdata->vif.type == NL80211_IFTYPE_MESH_POINT)
|
|
memcpy(mgmt->bssid, sdata->vif.addr, ETH_ALEN);
|
|
memcpy(mgmt->bssid, sdata->vif.addr, ETH_ALEN);
|
|
else if (sdata->vif.type == NL80211_IFTYPE_STATION)
|
|
else if (sdata->vif.type == NL80211_IFTYPE_STATION)
|
|
memcpy(mgmt->bssid, sdata->u.mgd.bssid, ETH_ALEN);
|
|
memcpy(mgmt->bssid, sdata->u.mgd.bssid, ETH_ALEN);
|
|
@@ -371,13 +372,8 @@ int ieee80211_start_tx_ba_session(struct ieee80211_sta *pubsta, u16 tid,
|
|
pubsta->addr, tid);
|
|
pubsta->addr, tid);
|
|
#endif /* CONFIG_MAC80211_HT_DEBUG */
|
|
#endif /* CONFIG_MAC80211_HT_DEBUG */
|
|
|
|
|
|
- /*
|
|
|
|
- * The aggregation code is not prepared to handle
|
|
|
|
- * anything but STA/AP due to the BSSID handling.
|
|
|
|
- * IBSS could work in the code but isn't supported
|
|
|
|
- * by drivers or the standard.
|
|
|
|
- */
|
|
|
|
if (sdata->vif.type != NL80211_IFTYPE_STATION &&
|
|
if (sdata->vif.type != NL80211_IFTYPE_STATION &&
|
|
|
|
+ sdata->vif.type != NL80211_IFTYPE_MESH_POINT &&
|
|
sdata->vif.type != NL80211_IFTYPE_AP_VLAN &&
|
|
sdata->vif.type != NL80211_IFTYPE_AP_VLAN &&
|
|
sdata->vif.type != NL80211_IFTYPE_AP)
|
|
sdata->vif.type != NL80211_IFTYPE_AP)
|
|
return -EINVAL;
|
|
return -EINVAL;
|