Name

struct sta_info — STA information

Synopsis

struct sta_info {
  struct list_head list;
  struct sta_info * hnext;
  struct ieee80211_local * local;
  struct ieee80211_sub_if_data * sdata;
  struct ieee80211_key * key;
  struct rate_control_ref * rate_ctrl;
  void * rate_ctrl_priv;
  spinlock_t lock;
  spinlock_t flaglock;
  struct ieee80211_ht_info ht_info;
  u64 supp_rates[IEEE80211_NUM_BANDS];
  u8 addr[ETH_ALEN];
  u16 aid;
  u16 listen_interval;
  u8 pin_status;
  u32 flags;
  struct sk_buff_head ps_tx_buf;
  struct sk_buff_head tx_filtered;
  unsigned long rx_packets;
  unsigned long rx_bytes;
  unsigned long wep_weak_iv_count;
  unsigned long last_rx;
  unsigned long num_duplicates;
  unsigned long rx_fragments;
  unsigned long rx_dropped;
  int last_signal;
  int last_qual;
  int last_noise;
  __le16 last_seq_ctrl[NUM_RX_DATA_QUEUES];
#ifdef CONFIG_MAC80211_DEBUG_COUNTERS
  unsigned int wme_rx_queue[NUM_RX_DATA_QUEUES];
#endif
  unsigned long tx_filtered_count;
  unsigned long tx_retry_failed;
  unsigned long tx_retry_count;
  u32 tx_num_consecutive_failures;
  u32 tx_num_mpdu_ok;
  u32 tx_num_mpdu_fail;
  unsigned int fail_avg;
  unsigned long tx_packets;
  unsigned long tx_bytes;
  unsigned long tx_fragments;
  int txrate_idx;
  int last_txrate_idx;
#ifdef CONFIG_MAC80211_DEBUG_COUNTERS
  unsigned int wme_tx_queue[NUM_RX_DATA_QUEUES];
#endif
  struct sta_ampdu_mlme ampdu_mlme;
  u8 timer_to_tid[STA_TID_NUM];
  u8 tid_to_tx_q[STA_TID_NUM];
#ifdef CONFIG_MAC80211_MESH
  __le16 llid;
  __le16 plid;
  __le16 reason;
  u8 plink_retries;
  bool ignore_plink_timer;
  enum plink_state plink_state;
  u32 plink_timeout;
  struct timer_list plink_timer;
#endif
#ifdef CONFIG_MAC80211_DEBUGFS
  struct sta_info_debugfsdentries debugfs;
#endif
};  

Members

list

global linked list entry

hnext

hash table linked list pointer

local

pointer to the global information

sdata

TBD

key

TBD

rate_ctrl

TBD

rate_ctrl_priv

TBD

lock

used for locking all fields that require locking, see comments in the header file.

flaglock

spinlock for flags accesses

ht_info

HT capabilities of this STA

supp_rates[IEEE80211_NUM_BANDS]

Bitmap of supported rates (per band)

addr[ETH_ALEN]

MAC address of this STA

aid

STA's unique AID (1..2007, 0 = not assigned yet), only used in AP (and IBSS?) mode

listen_interval

TBD

pin_status

TBD

flags

STA flags, see enum ieee80211_sta_info_flags

ps_tx_buf

buffer of frames to transmit to this station when it leaves power saving state

tx_filtered

buffer of frames we already tried to transmit but were filtered by hardware due to STA having entered power saving state

rx_packets

Number of MSDUs received from this STA

rx_bytes

Number of bytes received from this STA

wep_weak_iv_count

TBD

last_rx

TBD

num_duplicates

number of duplicate frames received from this STA

rx_fragments

number of received MPDUs

rx_dropped

number of dropped MPDUs from this STA

last_signal

signal of last received frame from this STA

last_qual

qual of last received frame from this STA

last_noise

noise of last received frame from this STA

last_seq_ctrl[NUM_RX_DATA_QUEUES]

last received seq/frag number from this STA (per RX queue)

wme_rx_queue[NUM_RX_DATA_QUEUES]

TBD

tx_filtered_count

TBD

tx_retry_failed

TBD

tx_retry_count

TBD

tx_num_consecutive_failures

TBD

tx_num_mpdu_ok

TBD

tx_num_mpdu_fail

TBD

fail_avg

moving percentage of failed MSDUs

tx_packets

number of RX/TX MSDUs

tx_bytes

TBD

tx_fragments

number of transmitted MPDUs

txrate_idx

TBD

last_txrate_idx

TBD

wme_tx_queue[NUM_RX_DATA_QUEUES]

TBD

ampdu_mlme

TBD

timer_to_tid[STA_TID_NUM]

identity mapping to ID timers

tid_to_tx_q[STA_TID_NUM]

map tid to tx queue

llid

Local link ID

plid

Peer link ID

reason

Cancel reason on PLINK_HOLDING state

plink_retries

Retries in establishment

ignore_plink_timer

TBD

plink_state

TBD

plink_timeout

TBD

plink_timer

TBD

debugfs

debug filesystem info

Description

This structure collects information about a station that mac80211 is communicating with.