aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/agg-tx.c
diff options
context:
space:
mode:
authorThomas Pedersen <thomas@cozybit.com>2011-10-26 17:47:29 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-11-08 15:55:27 -0500
commitae2772b313b98a14f69b5bc67135c9fee48771be (patch)
treeb219dba159c95c5de70c0c84e7aec3f23a70b108 /net/mac80211/agg-tx.c
parent739522baa1d6804a3ff33e8c135db0e6b2165f75 (diff)
mac80211: allow frame aggregation for mesh
Signed-off-by: Thomas Pedersen <thomas@cozybit.com> Signed-off-by: Ashok Nagarajan <anagar6@uic.edu> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/agg-tx.c')
-rw-r--r--net/mac80211/agg-tx.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/net/mac80211/agg-tx.c b/net/mac80211/agg-tx.c
index 2ac033989e01..fefc7e506754 100644
--- a/net/mac80211/agg-tx.c
+++ b/net/mac80211/agg-tx.c
@@ -77,7 +77,8 @@ static void ieee80211_send_addba_request(struct ieee80211_sub_if_data *sdata,
77 memcpy(mgmt->da, da, ETH_ALEN); 77 memcpy(mgmt->da, da, ETH_ALEN);
78 memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN); 78 memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
79 if (sdata->vif.type == NL80211_IFTYPE_AP || 79 if (sdata->vif.type == NL80211_IFTYPE_AP ||
80 sdata->vif.type == NL80211_IFTYPE_AP_VLAN) 80 sdata->vif.type == NL80211_IFTYPE_AP_VLAN ||
81 sdata->vif.type == NL80211_IFTYPE_MESH_POINT)
81 memcpy(mgmt->bssid, sdata->vif.addr, ETH_ALEN); 82 memcpy(mgmt->bssid, sdata->vif.addr, ETH_ALEN);
82 else if (sdata->vif.type == NL80211_IFTYPE_STATION) 83 else if (sdata->vif.type == NL80211_IFTYPE_STATION)
83 memcpy(mgmt->bssid, sdata->u.mgd.bssid, ETH_ALEN); 84 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,
371 pubsta->addr, tid); 372 pubsta->addr, tid);
372#endif /* CONFIG_MAC80211_HT_DEBUG */ 373#endif /* CONFIG_MAC80211_HT_DEBUG */
373 374
374 /*
375 * The aggregation code is not prepared to handle
376 * anything but STA/AP due to the BSSID handling.
377 * IBSS could work in the code but isn't supported
378 * by drivers or the standard.
379 */
380 if (sdata->vif.type != NL80211_IFTYPE_STATION && 375 if (sdata->vif.type != NL80211_IFTYPE_STATION &&
376 sdata->vif.type != NL80211_IFTYPE_MESH_POINT &&
381 sdata->vif.type != NL80211_IFTYPE_AP_VLAN && 377 sdata->vif.type != NL80211_IFTYPE_AP_VLAN &&
382 sdata->vif.type != NL80211_IFTYPE_AP) 378 sdata->vif.type != NL80211_IFTYPE_AP)
383 return -EINVAL; 379 return -EINVAL;