1#include <net/ieee80211_radiotap.h> 2 3struct tx_radiotap_hdr { 4 struct ieee80211_radiotap_header hdr; 5 u8 rate; 6 u8 txpower; 7 u8 rts_retries; 8 u8 data_retries; 9} __packed; 10 11#define TX_RADIOTAP_PRESENT ( \ 12 (1 << IEEE80211_RADIOTAP_RATE) | \ 13 (1 << IEEE80211_RADIOTAP_DBM_TX_POWER) | \ 14 (1 << IEEE80211_RADIOTAP_RTS_RETRIES) | \ 15 (1 << IEEE80211_RADIOTAP_DATA_RETRIES) | \ 16 0) 17 18#define IEEE80211_FC_VERSION_MASK 0x0003 19#define IEEE80211_FC_TYPE_MASK 0x000c 20#define IEEE80211_FC_TYPE_MGT 0x0000 21#define IEEE80211_FC_TYPE_CTL 0x0004 22#define IEEE80211_FC_TYPE_DATA 0x0008 23#define IEEE80211_FC_SUBTYPE_MASK 0x00f0 24#define IEEE80211_FC_TOFROMDS_MASK 0x0300 25#define IEEE80211_FC_TODS_MASK 0x0100 26#define IEEE80211_FC_FROMDS_MASK 0x0200 27#define IEEE80211_FC_NODS 0x0000 28#define IEEE80211_FC_TODS 0x0100 29#define IEEE80211_FC_FROMDS 0x0200 30#define IEEE80211_FC_DSTODS 0x0300 31 32struct rx_radiotap_hdr { 33 struct ieee80211_radiotap_header hdr; 34 u8 flags; 35 u8 rate; 36 u8 antsignal; 37} __packed; 38 39#define RX_RADIOTAP_PRESENT ( \ 40 (1 << IEEE80211_RADIOTAP_FLAGS) | \ 41 (1 << IEEE80211_RADIOTAP_RATE) | \ 42 (1 << IEEE80211_RADIOTAP_DB_ANTSIGNAL) |\ 43 0) 44 45