For now, disallow peering if our WMM parameters don't match our peer's.
Signed-off-by: Thomas Pedersen <[email protected]>
---
net/mac80211/mesh.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/net/mac80211/mesh.c b/net/mac80211/mesh.c
index b3a125f..dd83c8f7 100644
--- a/net/mac80211/mesh.c
+++ b/net/mac80211/mesh.c
@@ -103,6 +103,13 @@ bool mesh_matches_local(struct ieee802_11_elems *ie,
struct ieee80211_sub_if_dat
ieee80211_ht_info_to_channel_type(ie->ht_info_elem)))
goto mismatch;
+ if (ie->wmm_param) {
+ u8 wmm_local[sizeof(struct ieee80211_wmm_param_ie)];
+ ieee80211_build_wmm_ie(&sdata->vif, wmm_local);
+ if (memcmp(ie->wmm_param, wmm_local, sizeof(wmm_local)))
+ goto mismatch;
+ }
+
return true;
mismatch:
return false;
--
1.7.5.4
_______________________________________________
Devel mailing list
[email protected]
http://open80211s.com/mailman/listinfo/devel