diff options
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r-- | net/mac80211/rx.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index ab5185054e6c..839cac8fab57 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -2434,7 +2434,7 @@ ieee80211_rx_h_action_return(struct ieee80211_rx_data *rx) | |||
2434 | * frames that we didn't handle, including returning unknown | 2434 | * frames that we didn't handle, including returning unknown |
2435 | * ones. For all other modes we will return them to the sender, | 2435 | * ones. For all other modes we will return them to the sender, |
2436 | * setting the 0x80 bit in the action category, as required by | 2436 | * setting the 0x80 bit in the action category, as required by |
2437 | * 802.11-2007 7.3.1.11. | 2437 | * 802.11-2012 9.24.4. |
2438 | * Newer versions of hostapd shall also use the management frame | 2438 | * Newer versions of hostapd shall also use the management frame |
2439 | * registration mechanisms, but older ones still use cooked | 2439 | * registration mechanisms, but older ones still use cooked |
2440 | * monitor interfaces so push all frames there. | 2440 | * monitor interfaces so push all frames there. |
@@ -2444,6 +2444,9 @@ ieee80211_rx_h_action_return(struct ieee80211_rx_data *rx) | |||
2444 | sdata->vif.type == NL80211_IFTYPE_AP_VLAN)) | 2444 | sdata->vif.type == NL80211_IFTYPE_AP_VLAN)) |
2445 | return RX_DROP_MONITOR; | 2445 | return RX_DROP_MONITOR; |
2446 | 2446 | ||
2447 | if (is_multicast_ether_addr(mgmt->da)) | ||
2448 | return RX_DROP_MONITOR; | ||
2449 | |||
2447 | /* do not return rejected action frames */ | 2450 | /* do not return rejected action frames */ |
2448 | if (mgmt->u.action.category & 0x80) | 2451 | if (mgmt->u.action.category & 0x80) |
2449 | return RX_DROP_UNUSABLE; | 2452 | return RX_DROP_UNUSABLE; |