mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
26 lines
838 B
Diff
26 lines
838 B
Diff
|
From: Johannes Berg <johannes.berg@intel.com>
|
||
|
Date: Thu, 4 Jan 2018 15:51:53 +0100
|
||
|
Subject: [PATCH] mac80211: mesh: drop frames appearing to be from us
|
||
|
|
||
|
If there are multiple mesh stations with the same MAC address,
|
||
|
they will both get confused and start throwing warnings.
|
||
|
|
||
|
Obviously in this case nothing can actually work anyway, so just
|
||
|
drop frames that look like they're from ourselves early on.
|
||
|
|
||
|
Reported-by: Gui Iribarren <gui@altermundi.net>
|
||
|
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
||
|
---
|
||
|
|
||
|
--- a/net/mac80211/rx.c
|
||
|
+++ b/net/mac80211/rx.c
|
||
|
@@ -3632,6 +3632,8 @@ static bool ieee80211_accept_frame(struc
|
||
|
}
|
||
|
return true;
|
||
|
case NL80211_IFTYPE_MESH_POINT:
|
||
|
+ if (ether_addr_equal(sdata->vif.addr, hdr->addr2))
|
||
|
+ return false;
|
||
|
if (multicast)
|
||
|
return true;
|
||
|
return ether_addr_equal(sdata->vif.addr, hdr->addr1);
|