STRUCT STA_INFO(9) | Internals | STRUCT STA_INFO(9) |
NAME¶
struct_sta_info - STA information
SYNOPSIS¶
struct sta_info {
struct list_head list;
struct list_head free_list;
struct rcu_head rcu_head;
struct sta_info __rcu * hnext;
u8 addr[ETH_ALEN];
struct ieee80211_local * local;
struct ieee80211_sub_if_data * sdata;
struct ieee80211_key __rcu * gtk[NUM_DEFAULT_KEYS + NUM_DEFAULT_MGMT_KEYS];
struct ieee80211_key __rcu * ptk[NUM_DEFAULT_KEYS];
u8 ptk_idx;
struct rate_control_ref * rate_ctrl;
void * rate_ctrl_priv;
spinlock_t rate_ctrl_lock;
spinlock_t lock;
struct ieee80211_fast_tx __rcu * fast_tx; #ifdef CONFIG_MAC80211_MESH
struct mesh_sta * mesh; #endif
struct work_struct drv_deliver_wk;
u16 listen_interval;
bool dead;
bool uploaded;
enum ieee80211_sta_state sta_state;
unsigned long _flags;
spinlock_t ps_lock;
struct sk_buff_head ps_tx_buf[IEEE80211_NUM_ACS];
struct sk_buff_head tx_filtered[IEEE80211_NUM_ACS];
unsigned long driver_buffered_tids;
unsigned long txq_buffered_tids;
unsigned long rx_packets;
u64 rx_bytes;
unsigned long last_rx;
long last_connected;
unsigned long num_duplicates;
unsigned long rx_fragments;
unsigned long rx_dropped;
int last_signal;
struct ewma_signal avg_signal;
int last_ack_signal;
u8 chains;
s8 chain_signal_last[IEEE80211_MAX_CHAINS];
struct ewma_signal chain_signal_avg[IEEE80211_MAX_CHAINS];
__le16 last_seq_ctrl[IEEE80211_NUM_TIDS + 1];
unsigned long tx_filtered_count;
unsigned long tx_retry_failed;
unsigned long tx_retry_count;
u64 tx_packets[IEEE80211_NUM_ACS];
u64 tx_bytes[IEEE80211_NUM_ACS];
struct ieee80211_tx_rate last_tx_rate;
int last_rx_rate_idx;
u32 last_rx_rate_flag;
u32 last_rx_rate_vht_flag;
u8 last_rx_rate_vht_nss;
u16 tid_seq[IEEE80211_QOS_CTL_TID_MASK + 1];
u64 tx_msdu[IEEE80211_NUM_TIDS + 1];
u64 tx_msdu_retries[IEEE80211_NUM_TIDS + 1];
u64 tx_msdu_failed[IEEE80211_NUM_TIDS + 1];
u64 rx_msdu[IEEE80211_NUM_TIDS + 1];
struct sta_ampdu_mlme ampdu_mlme;
u8 timer_to_tid[IEEE80211_NUM_TIDS]; #ifdef CONFIG_MAC80211_DEBUGFS
struct sta_info_debugfsdentries debugfs; #endif
enum ieee80211_sta_rx_bandwidth cur_max_bandwidth;
unsigned int lost_packets;
unsigned int beacon_loss_count;
enum ieee80211_smps_mode known_smps_mode;
const struct ieee80211_cipher_scheme * cipher_scheme;
unsigned long last_tdls_pkt_time;
u8 reserved_tid;
struct cfg80211_chan_def tdls_chandef;
struct ieee80211_sta sta; };
MEMBERS¶
list
free_list
rcu_head
hnext
addr[ETH_ALEN]
local
sdata
gtk[NUM_DEFAULT_KEYS + NUM_DEFAULT_MGMT_KEYS]
ptk[NUM_DEFAULT_KEYS]
ptk_idx
rate_ctrl
rate_ctrl_priv
rate_ctrl_lock
lock
fast_tx
mesh
drv_deliver_wk
listen_interval
dead
uploaded
sta_state
_flags
ps_lock
ps_tx_buf[IEEE80211_NUM_ACS]
tx_filtered[IEEE80211_NUM_ACS]
driver_buffered_tids
txq_buffered_tids
rx_packets
rx_bytes
last_rx
last_connected
num_duplicates
rx_fragments
rx_dropped
last_signal
avg_signal
last_ack_signal
chains
chain_signal_last[IEEE80211_MAX_CHAINS]
chain_signal_avg[IEEE80211_MAX_CHAINS]
last_seq_ctrl[IEEE80211_NUM_TIDS + 1]
tx_filtered_count
tx_retry_failed
tx_retry_count
tx_packets[IEEE80211_NUM_ACS]
tx_bytes[IEEE80211_NUM_ACS]
last_tx_rate
last_rx_rate_idx
last_rx_rate_flag
last_rx_rate_vht_flag
last_rx_rate_vht_nss
tid_seq[IEEE80211_QOS_CTL_TID_MASK + 1]
tx_msdu[IEEE80211_NUM_TIDS + 1]
tx_msdu_retries[IEEE80211_NUM_TIDS + 1]
tx_msdu_failed[IEEE80211_NUM_TIDS + 1]
rx_msdu[IEEE80211_NUM_TIDS + 1]
ampdu_mlme
timer_to_tid[IEEE80211_NUM_TIDS]
debugfs
cur_max_bandwidth
lost_packets
beacon_loss_count
known_smps_mode
cipher_scheme
last_tdls_pkt_time
reserved_tid
tdls_chandef
sta
DESCRIPTION¶
This structure collects information about a station that mac80211 is communicating with.
AUTHOR¶
Johannes Berg <johannes@sipsolutions.net>
COPYRIGHT¶
May 2024 | Kernel Hackers Manual 2.6. |