summaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/510-mac80211_4addr_vlan.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/mac80211/patches/510-mac80211_4addr_vlan.patch')
-rw-r--r--package/mac80211/patches/510-mac80211_4addr_vlan.patch9
1 files changed, 9 insertions, 0 deletions
diff --git a/package/mac80211/patches/510-mac80211_4addr_vlan.patch b/package/mac80211/patches/510-mac80211_4addr_vlan.patch
index ac92fe54b..d3d1e8293 100644
--- a/package/mac80211/patches/510-mac80211_4addr_vlan.patch
+++ b/package/mac80211/patches/510-mac80211_4addr_vlan.patch
@@ -213,6 +213,15 @@
return ieee80211_data_to_8023(rx->skb, dev->dev_addr, sdata->vif.type);
}
+@@ -1285,7 +1292,7 @@ ieee80211_deliver_skb(struct ieee80211_r
+ if ((sdata->vif.type == NL80211_IFTYPE_AP ||
+ sdata->vif.type == NL80211_IFTYPE_AP_VLAN) &&
+ !(sdata->flags & IEEE80211_SDATA_DONT_BRIDGE_PACKETS) &&
+- (rx->flags & IEEE80211_RX_RA_MATCH)) {
++ (rx->flags & IEEE80211_RX_RA_MATCH) && !rx->sdata->use_4addr) {
+ if (is_multicast_ether_addr(ehdr->h_dest)) {
+ /*
+ * send multicast frames both to higher layers in
@@ -1590,6 +1597,7 @@ ieee80211_rx_h_data(struct ieee80211_rx_
{
struct net_device *dev = rx->dev;