mac80211: when operating as a 4-addr station, do not pick up 4-addr frames meant for other stations, as this would confuse the bridge layer

SVN-Revision: 25378
This commit is contained in:
Felix Fietkau 2011-02-05 22:38:23 +00:00
parent 6da37f79c5
commit 2ed844f6a5

View File

@ -0,0 +1,12 @@
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -2609,7 +2609,8 @@ static int prepare_for_handlers(struct i
return 0;
if (!multicast &&
compare_ether_addr(sdata->vif.addr, hdr->addr1) != 0) {
- if (!(sdata->dev->flags & IFF_PROMISC))
+ if (!(sdata->dev->flags & IFF_PROMISC) ||
+ sdata->u.mgd.use_4addr)
return 0;
status->rx_flags &= ~IEEE80211_RX_RA_MATCH;
}