diff options
author | Eliad Peller <eliad@wizery.com> | 2014-12-21 13:25:28 (GMT) |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-12-23 09:16:43 (GMT) |
commit | 85b89af07d509531cbbb51adb9ec65f90f304473 (patch) | |
tree | 1a450b7da2cfab6f45037f4fd612150b072325aa | |
parent | 5875755c577b00b06aba77ba471175c3e3a33c25 (diff) | |
download | linux-85b89af07d509531cbbb51adb9ec65f90f304473.tar.xz |
mac80211: fix dot11MulticastTransmittedFrameCount tested address
dot11MulticastTransmittedFrameCount should be updated according
to the DA, which might be different from A1. Checking A1 results
in the counter being 0 in case of station, as to-DS data frames
use A1 for the BSSID.
This behaviour is defined in state machines, specifically in the
sta_tx_dcf_3.1d(10) description of 802.11-2012.
Signed-off-by: Eliad Peller <eliad@wizery.com>
[rewrite commit message]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r-- | net/mac80211/status.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/status.c b/net/mac80211/status.c index d64037c..7d4e930 100644 --- a/net/mac80211/status.c +++ b/net/mac80211/status.c @@ -862,7 +862,7 @@ void ieee80211_tx_status(struct ieee80211_hw *hw, struct sk_buff *skb) (info->flags & IEEE80211_TX_STAT_NOACK_TRANSMITTED)) { if (ieee80211_is_first_frag(hdr->seq_ctrl)) { local->dot11TransmittedFrameCount++; - if (is_multicast_ether_addr(hdr->addr1)) + if (is_multicast_ether_addr(ieee80211_get_DA(hdr))) local->dot11MulticastTransmittedFrameCount++; if (retry_count > 0) local->dot11RetryCount++; |