Commit 4b5ebccc40843104d980f0714bc86bfcd5568941

Authored by Johannes Berg
Committed by John W. Linville
1 parent 7508b65796

mac80211: correct behaviour on unrecognised action frames

When receiving an "individually addressed" action frame, the
receiver is required to return it to the sender. mac80211
gets this wrong as it also returns group addressed (mcast)
frames to the sender. Fix this and update the reference to
the new 802.11 standards version since things were shuffled
around significantly.

Cc: stable@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

Showing 1 changed file with 4 additions and 1 deletions Side-by-side Diff

... ... @@ -2455,7 +2455,7 @@
2455 2455 * frames that we didn't handle, including returning unknown
2456 2456 * ones. For all other modes we will return them to the sender,
2457 2457 * setting the 0x80 bit in the action category, as required by
2458   - * 802.11-2007 7.3.1.11.
  2458 + * 802.11-2012 9.24.4.
2459 2459 * Newer versions of hostapd shall also use the management frame
2460 2460 * registration mechanisms, but older ones still use cooked
2461 2461 * monitor interfaces so push all frames there.
... ... @@ -2463,6 +2463,9 @@
2463 2463 if (!(status->rx_flags & IEEE80211_RX_MALFORMED_ACTION_FRM) &&
2464 2464 (sdata->vif.type == NL80211_IFTYPE_AP ||
2465 2465 sdata->vif.type == NL80211_IFTYPE_AP_VLAN))
  2466 + return RX_DROP_MONITOR;
  2467 +
  2468 + if (is_multicast_ether_addr(mgmt->da))
2466 2469 return RX_DROP_MONITOR;
2467 2470  
2468 2471 /* do not return rejected action frames */