mac80211: Remove radiotap rate-present flag for HT
authorJouni Malinen <jouni.malinen@atheros.com>
Mon, 15 Dec 2008 08:37:50 +0000 (10:37 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 19 Dec 2008 20:23:22 +0000 (15:23 -0500)
Since we do not currently report HT rates (MCS index) in radiotap
header for HT rates, we should not claim the rate is present. The rate
octet itself is used as padding in this case, so only the it_present
flag needs to be removed in case of HT rates.

Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/rx.c

index b729c005a2b3ef9e5681a16c39f908dcb1fb6ba8..7175ae80c36a3b3a513fd1f5040643e595401a5c 100644 (file)
@@ -123,7 +123,6 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local,
        /* radiotap header, set always present flags */
        rthdr->it_present =
                cpu_to_le32((1 << IEEE80211_RADIOTAP_FLAGS) |
-                           (1 << IEEE80211_RADIOTAP_RATE) |
                            (1 << IEEE80211_RADIOTAP_CHANNEL) |
                            (1 << IEEE80211_RADIOTAP_ANTENNA) |
                            (1 << IEEE80211_RADIOTAP_RX_FLAGS));
@@ -158,8 +157,10 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local,
                 * - short-GI (status->flag & RX_FLAG_SHORT_GI)
                 */
                *pos = 0;
-       } else
+       } else {
+               rthdr->it_present |= (1 << IEEE80211_RADIOTAP_RATE);
                *pos = rate->bitrate / 5;
+       }
        pos++;
 
        /* IEEE80211_RADIOTAP_CHANNEL */