GNUnet  0.11.x
Data Structures | Macros | Enumerations | Functions | Variables
ieee80211_radiotap.h File Reference
#include <linux/if_ether.h>
#include <linux/kernel.h>
Include dependency graph for ieee80211_radiotap.h:

Go to the source code of this file.

Data Structures

struct  ieee80211_radiotap_header
 

Macros

#define PKTHDR_RADIOTAP_VERSION   0
 
#define IEEE80211_CHAN_TURBO   0x0010 /* Turbo channel */
 
#define IEEE80211_CHAN_CCK   0x0020 /* CCK channel */
 
#define IEEE80211_CHAN_OFDM   0x0040 /* OFDM channel */
 
#define IEEE80211_CHAN_2GHZ   0x0080 /* 2 GHz spectrum channel. */
 
#define IEEE80211_CHAN_5GHZ   0x0100 /* 5 GHz spectrum channel */
 
#define IEEE80211_CHAN_PASSIVE   0x0200 /* Only passive scan allowed */
 
#define IEEE80211_CHAN_DYN   0x0400 /* Dynamic CCK-OFDM channel */
 
#define IEEE80211_CHAN_GFSK   0x0800 /* GFSK channel (FHSS PHY) */
 
#define IEEE80211_RADIOTAP_F_CFP
 
#define IEEE80211_RADIOTAP_F_SHORTPRE
 
#define IEEE80211_RADIOTAP_F_WEP
 
#define IEEE80211_RADIOTAP_F_FRAG
 
#define IEEE80211_RADIOTAP_F_FCS   0x10 /* frame includes FCS */
 
#define IEEE80211_RADIOTAP_F_DATAPAD
 
#define IEEE80211_RADIOTAP_F_BADFCS   0x40 /* bad FCS */
 
#define IEEE80211_RADIOTAP_F_RX_BADPLCP   0x0002 /* frame has bad PLCP */
 
#define IEEE80211_RADIOTAP_F_TX_FAIL
 
#define IEEE80211_RADIOTAP_F_TX_CTS   0x0002 /* used cts 'protection' */
 
#define IEEE80211_RADIOTAP_F_TX_RTS   0x0004 /* used rts/cts handshake */
 
#define ieee80211chan2mhz(x)
 

Enumerations

enum  ieee80211_radiotap_type {
  IEEE80211_RADIOTAP_TSFT = 0, IEEE80211_RADIOTAP_FLAGS = 1, IEEE80211_RADIOTAP_RATE = 2, IEEE80211_RADIOTAP_CHANNEL = 3,
  IEEE80211_RADIOTAP_FHSS = 4, IEEE80211_RADIOTAP_DBM_ANTSIGNAL = 5, IEEE80211_RADIOTAP_DBM_ANTNOISE = 6, IEEE80211_RADIOTAP_LOCK_QUALITY = 7,
  IEEE80211_RADIOTAP_TX_ATTENUATION = 8, IEEE80211_RADIOTAP_DB_TX_ATTENUATION = 9, IEEE80211_RADIOTAP_DBM_TX_POWER = 10, IEEE80211_RADIOTAP_ANTENNA = 11,
  IEEE80211_RADIOTAP_DB_ANTSIGNAL = 12, IEEE80211_RADIOTAP_DB_ANTNOISE = 13, IEEE80211_RADIOTAP_RX_FLAGS = 14, IEEE80211_RADIOTAP_TX_FLAGS = 15,
  IEEE80211_RADIOTAP_RTS_RETRIES = 16, IEEE80211_RADIOTAP_DATA_RETRIES = 17, IEEE80211_RADIOTAP_RADIOTAP_NAMESPACE = 29, IEEE80211_RADIOTAP_VENDOR_NAMESPACE = 30,
  IEEE80211_RADIOTAP_EXT = 31
}
 

Functions

static u16 get_unaligned_le16 (const u8 *p)
 
static int ieee80211_get_radiotap_len (unsigned char *data)
 

Variables

struct ieee80211_radiotap_header __packed
 

Macro Definition Documentation

◆ PKTHDR_RADIOTAP_VERSION

#define PKTHDR_RADIOTAP_VERSION   0

Definition at line 43 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_TURBO

#define IEEE80211_CHAN_TURBO   0x0010 /* Turbo channel */

Definition at line 211 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_CCK

#define IEEE80211_CHAN_CCK   0x0020 /* CCK channel */

Definition at line 212 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_OFDM

#define IEEE80211_CHAN_OFDM   0x0040 /* OFDM channel */

Definition at line 213 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_2GHZ

#define IEEE80211_CHAN_2GHZ   0x0080 /* 2 GHz spectrum channel. */

Definition at line 214 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_5GHZ

#define IEEE80211_CHAN_5GHZ   0x0100 /* 5 GHz spectrum channel */

Definition at line 215 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_PASSIVE

#define IEEE80211_CHAN_PASSIVE   0x0200 /* Only passive scan allowed */

Definition at line 216 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_DYN

#define IEEE80211_CHAN_DYN   0x0400 /* Dynamic CCK-OFDM channel */

Definition at line 217 of file ieee80211_radiotap.h.

◆ IEEE80211_CHAN_GFSK

#define IEEE80211_CHAN_GFSK   0x0800 /* GFSK channel (FHSS PHY) */

Definition at line 218 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_CFP

#define IEEE80211_RADIOTAP_F_CFP
Value:
0x01 /* sent/received
* during CFP
*/

Definition at line 221 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_SHORTPRE

#define IEEE80211_RADIOTAP_F_SHORTPRE
Value:
0x02 /* sent/received
* with short
* preamble
*/

Definition at line 224 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_WEP

#define IEEE80211_RADIOTAP_F_WEP
Value:
0x04 /* sent/received
* with WEP encryption
*/

Definition at line 228 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_FRAG

#define IEEE80211_RADIOTAP_F_FRAG
Value:
0x08 /* sent/received
* with fragmentation
*/

Definition at line 231 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_FCS

#define IEEE80211_RADIOTAP_F_FCS   0x10 /* frame includes FCS */

Definition at line 234 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_DATAPAD

#define IEEE80211_RADIOTAP_F_DATAPAD
Value:
0x20 /* frame has padding between
* 802.11 header and payload
* (to 32-bit boundary)
*/

Definition at line 235 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_BADFCS

#define IEEE80211_RADIOTAP_F_BADFCS   0x40 /* bad FCS */

Definition at line 239 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_RX_BADPLCP

#define IEEE80211_RADIOTAP_F_RX_BADPLCP   0x0002 /* frame has bad PLCP */

Definition at line 242 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_TX_FAIL

#define IEEE80211_RADIOTAP_F_TX_FAIL
Value:
0x0001 /* failed due to excessive
* retries */

Definition at line 245 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_TX_CTS

#define IEEE80211_RADIOTAP_F_TX_CTS   0x0002 /* used cts 'protection' */

Definition at line 247 of file ieee80211_radiotap.h.

◆ IEEE80211_RADIOTAP_F_TX_RTS

#define IEEE80211_RADIOTAP_F_TX_RTS   0x0004 /* used rts/cts handshake */

Definition at line 248 of file ieee80211_radiotap.h.

◆ ieee80211chan2mhz

#define ieee80211chan2mhz (   x)
Value:
(((x) <= 14) ? \
(((x) == 14) ? 2484 : ((x) * 5) + 2407) : \
((x) + 1000) * 5)

Definition at line 253 of file ieee80211_radiotap.h.

Enumeration Type Documentation

◆ ieee80211_radiotap_type

Enumerator
IEEE80211_RADIOTAP_TSFT 
IEEE80211_RADIOTAP_FLAGS 
IEEE80211_RADIOTAP_RATE 
IEEE80211_RADIOTAP_CHANNEL 
IEEE80211_RADIOTAP_FHSS 
IEEE80211_RADIOTAP_DBM_ANTSIGNAL 
IEEE80211_RADIOTAP_DBM_ANTNOISE 
IEEE80211_RADIOTAP_LOCK_QUALITY 
IEEE80211_RADIOTAP_TX_ATTENUATION 
IEEE80211_RADIOTAP_DB_TX_ATTENUATION 
IEEE80211_RADIOTAP_DBM_TX_POWER 
IEEE80211_RADIOTAP_ANTENNA 
IEEE80211_RADIOTAP_DB_ANTSIGNAL 
IEEE80211_RADIOTAP_DB_ANTNOISE 
IEEE80211_RADIOTAP_RX_FLAGS 
IEEE80211_RADIOTAP_TX_FLAGS 
IEEE80211_RADIOTAP_RTS_RETRIES 
IEEE80211_RADIOTAP_DATA_RETRIES 
IEEE80211_RADIOTAP_RADIOTAP_NAMESPACE 
IEEE80211_RADIOTAP_VENDOR_NAMESPACE 
IEEE80211_RADIOTAP_EXT 

Definition at line 183 of file ieee80211_radiotap.h.

184 {
203 
204  /* valid in every it_present bitmap, even vendor namespaces */
208 };

Function Documentation

◆ get_unaligned_le16()

static u16 get_unaligned_le16 ( const u8 *  p)
inlinestatic

Definition at line 260 of file ieee80211_radiotap.h.

Referenced by ieee80211_get_radiotap_len().

261 {
262  return p[0] | p[1] << 8;
263 }
static struct GNUNET_OS_Process * p
Helper process we started.
Definition: gnunet-qr.c:59
Here is the caller graph for this function:

◆ ieee80211_get_radiotap_len()

static int ieee80211_get_radiotap_len ( unsigned char *  data)
inlinestatic

Definition at line 267 of file ieee80211_radiotap.h.

References get_unaligned_le16(), and ieee80211_radiotap_header::it_len.

268 {
269  struct ieee80211_radiotap_header *hdr =
270  (struct ieee80211_radiotap_header *) data;
271 
272  return get_unaligned_le16 ((const u8 *) &hdr->it_len);
273 }
static u16 get_unaligned_le16(const u8 *p)
uint32_t data
The data value.
Here is the call graph for this function:

Variable Documentation

◆ __packed

struct ieee80211_radiotap_header __packed