16 #define WPA_SUPPLICANT_DRIVER_VERSION 4
22 #define HOSTAPD_CHAN_DISABLED 0x00000001
23 #define HOSTAPD_CHAN_NO_IR 0x00000002
24 #define HOSTAPD_CHAN_RADAR 0x00000008
25 #define HOSTAPD_CHAN_HT40PLUS 0x00000010
26 #define HOSTAPD_CHAN_HT40MINUS 0x00000020
27 #define HOSTAPD_CHAN_HT40 0x00000040
28 #define HOSTAPD_CHAN_SURVEY_LIST_INITIALIZED 0x00000080
30 #define HOSTAPD_CHAN_DFS_UNKNOWN 0x00000000
31 #define HOSTAPD_CHAN_DFS_USABLE 0x00000100
32 #define HOSTAPD_CHAN_DFS_UNAVAILABLE 0x00000200
33 #define HOSTAPD_CHAN_DFS_AVAILABLE 0x00000300
34 #define HOSTAPD_CHAN_DFS_MASK 0x00000300
36 #define HOSTAPD_CHAN_VHT_10_70 0x00000800
37 #define HOSTAPD_CHAN_VHT_30_50 0x00001000
38 #define HOSTAPD_CHAN_VHT_50_30 0x00002000
39 #define HOSTAPD_CHAN_VHT_70_10 0x00004000
41 #define HOSTAPD_CHAN_INDOOR_ONLY 0x00010000
42 #define HOSTAPD_CHAN_GO_CONCURRENT 0x00020000
52 REGDOM_SET_BY_COUNTRY_IE,
64 REGDOM_TYPE_CUSTOM_WORLD,
65 REGDOM_TYPE_INTERSECTION,
115 long double interference_factor;
125 #define HOSTAPD_MODE_FLAG_HT_INFO_KNOWN BIT(0)
126 #define HOSTAPD_MODE_FLAG_VHT_INFO_KNOWN BIT(1)
197 #define IEEE80211_MODE_INFRA 0
198 #define IEEE80211_MODE_IBSS 1
199 #define IEEE80211_MODE_AP 2
200 #define IEEE80211_MODE_MESH 5
202 #define IEEE80211_CAP_ESS 0x0001
203 #define IEEE80211_CAP_IBSS 0x0002
204 #define IEEE80211_CAP_PRIVACY 0x0010
205 #define IEEE80211_CAP_RRM 0x1000
209 #define IEEE80211_CAP_DMG_MASK 0x0003
210 #define IEEE80211_CAP_DMG_IBSS 0x0001
211 #define IEEE80211_CAP_DMG_PBSS 0x0002
212 #define IEEE80211_CAP_DMG_AP 0x0003
214 #define WPA_SCAN_QUAL_INVALID BIT(0)
215 #define WPA_SCAN_NOISE_INVALID BIT(1)
216 #define WPA_SCAN_LEVEL_INVALID BIT(2)
217 #define WPA_SCAN_LEVEL_DBM BIT(3)
218 #define WPA_SCAN_ASSOCIATED BIT(5)
264 unsigned int est_throughput;
267 size_t beacon_ie_len;
297 const char *drv_name;
300 #define WPAS_MAX_SCAN_SSIDS 16
320 } ssids[WPAS_MAX_SCAN_SSIDS];
364 u8 ssid[SSID_MAX_LEN];
455 const u8 *wep_key[4];
456 size_t wep_key_len[4];
458 int local_state_change;
875 #ifdef CONFIG_VHT_OVERRIDES
905 HIDDEN_SSID_ZERO_LEN,
906 HIDDEN_SSID_ZERO_CONTENTS
913 u8 gtk_rekey_failure;
915 u8 four_way_handshake;
1166 #define WPA_DRIVER_MESH_CONF_FLAG_AUTO_PLINKS 0x00000001
1172 int peer_link_timeout;
1178 const int *basic_rates;
1185 #define WPA_DRIVER_MESH_FLAG_USER_MPM 0x00000001
1186 #define WPA_DRIVER_MESH_FLAG_DRIVER_MPM 0x00000002
1187 #define WPA_DRIVER_MESH_FLAG_SAE_AUTH 0x00000004
1188 #define WPA_DRIVER_MESH_FLAG_AMPE 0x00000008
1197 #define WPA_DRIVER_CAPA_KEY_MGMT_WPA 0x00000001
1198 #define WPA_DRIVER_CAPA_KEY_MGMT_WPA2 0x00000002
1199 #define WPA_DRIVER_CAPA_KEY_MGMT_WPA_PSK 0x00000004
1200 #define WPA_DRIVER_CAPA_KEY_MGMT_WPA2_PSK 0x00000008
1201 #define WPA_DRIVER_CAPA_KEY_MGMT_WPA_NONE 0x00000010
1202 #define WPA_DRIVER_CAPA_KEY_MGMT_FT 0x00000020
1203 #define WPA_DRIVER_CAPA_KEY_MGMT_FT_PSK 0x00000040
1204 #define WPA_DRIVER_CAPA_KEY_MGMT_WAPI_PSK 0x00000080
1205 #define WPA_DRIVER_CAPA_KEY_MGMT_SUITE_B 0x00000100
1206 #define WPA_DRIVER_CAPA_KEY_MGMT_SUITE_B_192 0x00000200
1210 #define WPA_DRIVER_CAPA_ENC_WEP40 0x00000001
1211 #define WPA_DRIVER_CAPA_ENC_WEP104 0x00000002
1212 #define WPA_DRIVER_CAPA_ENC_TKIP 0x00000004
1213 #define WPA_DRIVER_CAPA_ENC_CCMP 0x00000008
1214 #define WPA_DRIVER_CAPA_ENC_WEP128 0x00000010
1215 #define WPA_DRIVER_CAPA_ENC_GCMP 0x00000020
1216 #define WPA_DRIVER_CAPA_ENC_GCMP_256 0x00000040
1217 #define WPA_DRIVER_CAPA_ENC_CCMP_256 0x00000080
1218 #define WPA_DRIVER_CAPA_ENC_BIP 0x00000100
1219 #define WPA_DRIVER_CAPA_ENC_BIP_GMAC_128 0x00000200
1220 #define WPA_DRIVER_CAPA_ENC_BIP_GMAC_256 0x00000400
1221 #define WPA_DRIVER_CAPA_ENC_BIP_CMAC_256 0x00000800
1222 #define WPA_DRIVER_CAPA_ENC_GTK_NOT_USED 0x00001000
1226 #define WPA_DRIVER_AUTH_OPEN 0x00000001
1227 #define WPA_DRIVER_AUTH_SHARED 0x00000002
1228 #define WPA_DRIVER_AUTH_LEAP 0x00000004
1233 #define WPA_DRIVER_FLAGS_DRIVER_IE 0x00000001
1235 #define WPA_DRIVER_FLAGS_SET_KEYS_AFTER_ASSOC 0x00000002
1237 #define WPA_DRIVER_FLAGS_DFS_OFFLOAD 0x00000004
1240 #define WPA_DRIVER_FLAGS_4WAY_HANDSHAKE 0x00000008
1242 #define WPA_DRIVER_FLAGS_WIRED 0x00000010
1245 #define WPA_DRIVER_FLAGS_SME 0x00000020
1247 #define WPA_DRIVER_FLAGS_AP 0x00000040
1249 #define WPA_DRIVER_FLAGS_SET_KEYS_AFTER_ASSOC_DONE 0x00000080
1251 #define WPA_DRIVER_FLAGS_HT_2040_COEX 0x00000100
1253 #define WPA_DRIVER_FLAGS_P2P_CONCURRENT 0x00000200
1258 #define WPA_DRIVER_FLAGS_P2P_DEDICATED_INTERFACE 0x00000400
1260 #define WPA_DRIVER_FLAGS_P2P_CAPABLE 0x00000800
1262 #define WPA_DRIVER_FLAGS_AP_TEARDOWN_SUPPORT 0x00001000
1268 #define WPA_DRIVER_FLAGS_P2P_MGMT_AND_NON_P2P 0x00002000
1274 #define WPA_DRIVER_FLAGS_SANE_ERROR_CODES 0x00004000
1276 #define WPA_DRIVER_FLAGS_OFFCHANNEL_TX 0x00008000
1278 #define WPA_DRIVER_FLAGS_EAPOL_TX_STATUS 0x00010000
1280 #define WPA_DRIVER_FLAGS_DEAUTH_TX_STATUS 0x00020000
1282 #define WPA_DRIVER_FLAGS_BSS_SELECTION 0x00040000
1284 #define WPA_DRIVER_FLAGS_TDLS_SUPPORT 0x00080000
1286 #define WPA_DRIVER_FLAGS_TDLS_EXTERNAL_SETUP 0x00100000
1288 #define WPA_DRIVER_FLAGS_PROBE_RESP_OFFLOAD 0x00200000
1290 #define WPA_DRIVER_FLAGS_AP_UAPSD 0x00400000
1292 #define WPA_DRIVER_FLAGS_INACTIVITY_TIMER 0x00800000
1294 #define WPA_DRIVER_FLAGS_AP_MLME 0x01000000
1296 #define WPA_DRIVER_FLAGS_SAE 0x02000000
1298 #define WPA_DRIVER_FLAGS_OBSS_SCAN 0x04000000
1300 #define WPA_DRIVER_FLAGS_IBSS 0x08000000
1302 #define WPA_DRIVER_FLAGS_RADAR 0x10000000
1304 #define WPA_DRIVER_FLAGS_DEDICATED_P2P_DEVICE 0x20000000
1306 #define WPA_DRIVER_FLAGS_QOS_MAPPING 0x40000000
1308 #define WPA_DRIVER_FLAGS_AP_CSA 0x80000000
1310 #define WPA_DRIVER_FLAGS_MESH 0x0000000100000000ULL
1312 #define WPA_DRIVER_FLAGS_ACS_OFFLOAD 0x0000000200000000ULL
1314 #define WPA_DRIVER_FLAGS_KEY_MGMT_OFFLOAD 0x0000000400000000ULL
1316 #define WPA_DRIVER_FLAGS_TDLS_CHANNEL_SWITCH 0x0000000800000000ULL
1318 #define WPA_DRIVER_FLAGS_HT_IBSS 0x0000001000000000ULL
1320 #define WPA_DRIVER_FLAGS_VHT_IBSS 0x0000002000000000ULL
1322 #define WPA_DRIVER_FLAGS_SUPPORT_HW_MODE_ANY 0x0000004000000000ULL
1325 #define WPA_DRIVER_SMPS_MODE_STATIC 0x00000001
1326 #define WPA_DRIVER_SMPS_MODE_DYNAMIC 0x00000002
1327 unsigned int smps_modes;
1329 unsigned int wmm_ac_supported:1;
1331 unsigned int mac_addr_rand_scan_supported:1;
1332 unsigned int mac_addr_rand_sched_scan_supported:1;
1363 #define WPA_DRIVER_PROBE_RESP_OFFLOAD_WPS 0x00000001
1365 #define WPA_DRIVER_PROBE_RESP_OFFLOAD_WPS2 0x00000002
1367 #define WPA_DRIVER_PROBE_RESP_OFFLOAD_P2P 0x00000004
1369 #define WPA_DRIVER_PROBE_RESP_OFFLOAD_INTERWORKING 0x00000008
1370 unsigned int probe_resp_offloads;
1372 unsigned int max_acl_mac_addrs;
1385 unsigned int extended_capa_len;
1390 #define WPA_DRIVER_FLAGS_DS_PARAM_SET_IE_IN_PROBES 0x00000001
1392 #define WPA_DRIVER_FLAGS_WFA_TPC_IE_IN_PROBES 0x00000002
1394 #define WPA_DRIVER_FLAGS_QUIET 0x00000004
1404 #define WPA_DRIVER_FLAGS_TX_POWER_INSERTION 0x00000008
1408 unsigned int conc_capab;
1410 unsigned int max_conc_chan_2_4;
1412 unsigned int max_conc_chan_5_0;
1419 unsigned long rx_packets, tx_packets, rx_bytes, tx_bytes;
1420 unsigned long current_tx_rate;
1421 unsigned long inactive_msec;
1422 unsigned long flags;
1423 unsigned long num_ps_buf_frames;
1424 unsigned long tx_retry_failed;
1425 unsigned long tx_retry_count;
1434 const u8 *supp_rates;
1435 size_t supp_rates_len;
1436 u16 listen_interval;
1439 int vht_opmode_enabled;
1444 enum mesh_plink_state plink_state;
1448 const u8 *ext_capab;
1449 size_t ext_capab_len;
1450 const u8 *supp_channels;
1451 size_t supp_channels_len;
1452 const u8 *supp_oper_classes;
1453 size_t supp_oper_classes_len;
1462 unsigned int num_mac_acl;
1534 const char *driver_params;
1535 int use_pae_group_addr;
1558 #define WPA_STA_AUTHORIZED BIT(0)
1559 #define WPA_STA_WMM BIT(1)
1560 #define WPA_STA_SHORT_PREAMBLE BIT(2)
1561 #define WPA_STA_MFP BIT(3)
1562 #define WPA_STA_TDLS_PEER BIT(4)
1563 #define WPA_STA_AUTHENTICATED BIT(5)
1576 WNM_SLEEP_ENTER_CONFIRM,
1577 WNM_SLEEP_ENTER_FAIL,
1578 WNM_SLEEP_EXIT_CONFIRM,
1579 WNM_SLEEP_EXIT_FAIL,
1580 WNM_SLEEP_TFS_REQ_IE_ADD,
1581 WNM_SLEEP_TFS_REQ_IE_NONE,
1582 WNM_SLEEP_TFS_REQ_IE_SET,
1584 WNM_SLEEP_TFS_RESP_IE_ADD,
1586 WNM_SLEEP_TFS_RESP_IE_NONE,
1587 WNM_SLEEP_TFS_RESP_IE_SET,
1589 WNM_SLEEP_TFS_IE_DEL
1609 int above_threshold;
1612 int avg_beacon_signal;
1615 enum chan_width chanwidth;
1644 size_t head_len, tail_len;
1645 size_t beacon_ies_len;
1646 size_t proberesp_ies_len;
1647 size_t assocresp_ies_len;
1648 size_t probe_resp_len;
1669 u16 counter_offset_beacon;
1670 u16 counter_offset_presp;
1674 enum tdls_peer_capability {
1675 TDLS_PEER_HT = BIT(0),
1676 TDLS_PEER_VHT = BIT(1),
1677 TDLS_PEER_WMM = BIT(2),
1681 enum wmm_params_valid_info {
1682 WMM_PARAMS_UAPSD_QUEUES_INFO = BIT(0),
1697 #ifdef CONFIG_MACSEC
1698 struct macsec_init_params {
1699 Boolean always_include_sci;
1705 enum drv_br_port_attr {
1706 DRV_BR_PORT_ATTR_PROXYARP,
1707 DRV_BR_PORT_ATTR_HAIRPIN_MODE,
1710 enum drv_br_net_param {
1711 DRV_BR_NET_PARAM_GARP_ACCEPT,
1712 DRV_BR_MULTICAST_SNOOPING,
1732 unsigned int ch_list_len;
1734 const int *freq_list;
1833 int (*
set_key)(
const char *ifname,
void *priv,
enum wpa_alg alg,
1834 const u8 *addr,
int key_idx,
int set_tx,
1835 const u8 *seq,
size_t seq_len,
1836 const u8 *key,
size_t key_len);
1861 void * (*init)(
void *ctx,
const char *ifname);
2009 const char * (*get_ifname)(
void *priv);
2021 const u8 * (*get_mac_addr)(
void *priv);
2078 int (*
send_mlme)(
void *priv,
const u8 *data,
size_t data_len,
2079 int noack,
unsigned int freq);
2138 void * (*global_init)(void);
2160 void * (*init2)(
void *ctx,
const char *ifname,
void *global_priv);
2345 size_t data_len,
int encrypt,
2346 const u8 *own_addr, u32 flags);
2359 int (*
sta_deauth)(
void *priv,
const u8 *own_addr,
const u8 *addr,
2483 unsigned int total_flags,
unsigned int flags_or,
2484 unsigned int flags_and);
2496 int cw_max,
int burst_time);
2518 const char *ifname,
const u8 *addr,
void *bss_ctx,
2519 void **drv_priv,
char *force_ifname, u8 *if_addr,
2520 const char *bridge,
int use_existing);
2530 const char *ifname);
2571 int (*
send_ether)(
void *priv,
const u8 *dst,
const u8 *src, u16 proto,
2572 const u8 *data,
size_t data_len);
2583 u32 session_timeout);
2622 const struct wpabuf *proberesp,
2623 const struct wpabuf *assocresp);
2646 const char *bridge_ifname,
char *ifname_wds);
2675 const u8 *dst,
const u8 *src,
const u8 *bssid,
2676 const u8 *data,
size_t data_len,
int no_cck);
2711 unsigned int duration);
2818 int (*
get_noa)(
void *priv, u8 *buf,
size_t buf_len);
2832 int (*
set_noa)(
void *priv, u8 count,
int start,
int duration);
2864 const char * (*get_radio_name)(
void *priv);
2883 u8 dialog_token, u16 status_code, u32 peer_capab,
2884 int initiator,
const u8 *buf,
size_t len);
2896 int (*tdls_oper)(
void *priv,
enum tdls_oper oper,
const u8 *peer);
2907 int (*wnm_oper)(
void *priv,
enum wnm_oper oper,
const u8 *peer,
2908 u8 *buf, u16 *buf_len);
2917 u8 qos_map_set_len);
2929 int prefixlen,
const u8 *addr);
2995 int (*driver_cmd)(
void *priv,
char *cmd,
char *buf,
size_t buf_len);
3019 unsigned int subcmd,
const u8 *data,
size_t data_len,
3036 const u8 *kck,
size_t kck_len,
3037 const u8 *replay_ctr);
3053 int (*
sta_assoc)(
void *priv,
const u8 *own_addr,
const u8 *addr,
3054 int reassoc, u16
status,
const u8 *ie,
size_t len);
3069 int (*
sta_auth)(
void *priv,
const u8 *own_addr,
const u8 *addr,
3070 u16 seq, u16
status,
const u8 *ie,
size_t len);
3084 size_t tspec_ielen);
3139 const u8 *addr,
int qos);
3175 int (*
add_tx_ts)(
void *priv, u8 tsid,
const u8 *addr, u8 user_prio,
3200 void *priv,
const u8 *addr, u8 oper_class,
3265 int (*
status)(
void *priv,
char *buf,
size_t buflen);
3281 int (*
roaming)(
void *priv,
int allowed,
const u8 *bssid);
3291 #ifdef CONFIG_MACSEC
3292 int (*macsec_init)(
void *priv,
struct macsec_init_params *params);
3294 int (*macsec_deinit)(
void *priv);
3303 int (*enable_protect_frames)(
void *priv, Boolean enabled);
3313 int (*set_replay_protect)(
void *priv, Boolean enabled, u32 window);
3322 int (*set_current_cipher_suite)(
void *priv,
const u8 *cs,
3332 int (*enable_controlled_port)(
void *priv, Boolean enabled);
3342 int (*get_receive_lowest_pn)(
void *priv, u32 channel, u8 an,
3353 int (*get_transmit_next_pn)(
void *priv, u32 channel, u8 an,
3364 int (*set_transmit_next_pn)(
void *priv, u32 channel, u8 an,
3373 int (*get_available_receive_sc)(
void *priv, u32 *channel);
3386 int (*create_receive_sc)(
void *priv, u32 channel,
const u8 *sci_addr,
3387 u16 sci_port,
unsigned int conf_offset,
3396 int (*delete_receive_sc)(
void *priv, u32 channel);
3407 int (*create_receive_sa)(
void *priv, u32 channel, u8 an,
3408 u32 lowest_pn,
const u8 *sak);
3417 int (*enable_receive_sa)(
void *priv, u32 channel, u8 an);
3426 int (*disable_receive_sa)(
void *priv, u32 channel, u8 an);
3434 int (*get_available_transmit_sc)(
void *priv, u32 *channel);
3444 int (*create_transmit_sc)(
void *priv, u32 channel,
const u8 *sci_addr,
3445 u16 sci_port,
unsigned int conf_offset);
3453 int (*delete_transmit_sc)(
void *priv, u32 channel);
3466 int (*create_transmit_sa)(
void *priv, u32 channel, u8 an, u32 next_pn,
3467 Boolean confidentiality,
const u8 *sak);
3476 int (*enable_transmit_sa)(
void *priv, u32 channel, u8 an);
3485 int (*disable_transmit_sa)(
void *priv, u32 channel, u8 an);
3528 int (*set_band)(
void *priv,
enum set_band band);
3542 unsigned int *num,
unsigned int *freq_list);
4113 u64 channel_time_busy;
4114 u64 channel_time_rx;
4115 u64 channel_time_tx;
4116 unsigned int filled;
4120 #define SURVEY_HAS_NF BIT(0)
4121 #define SURVEY_HAS_CHAN_TIME BIT(1)
4122 #define SURVEY_HAS_CHAN_TIME_BUSY BIT(2)
4123 #define SURVEY_HAS_CHAN_TIME_RX BIT(3)
4124 #define SURVEY_HAS_CHAN_TIME_TX BIT(4)
4373 EVENT_INTERFACE_ADDED, EVENT_INTERFACE_REMOVED
4406 TDLS_REQUEST_TEARDOWN,
4407 TDLS_REQUEST_DISCOVER,
4445 u8 target_ap[ETH_ALEN];
4468 u16 auth_transaction;
4604 struct wpa_driver_scan_ssid ssids[WPAS_MAX_SCAN_SSIDS];
4724 const u8 *replay_ctr;
4765 enum chan_width ch_width;
4791 enum chan_width chan_width;
4803 unsigned int freq_filter;
4856 u8 vht_seg0_center_ch;
4857 u8 vht_seg1_center_ch;
4882 static inline void drv_event_assoc(
void *ctx,
const u8 *addr,
const u8 *ie,
4883 size_t ielen,
int reassoc)
4886 os_memset(&event, 0,
sizeof(event));
4887 event.assoc_info.reassoc = reassoc;
4888 event.assoc_info.req_ies = ie;
4889 event.assoc_info.req_ies_len = ielen;
4890 event.assoc_info.addr = addr;
4894 static inline void drv_event_disassoc(
void *ctx,
const u8 *addr)
4897 os_memset(&event, 0,
sizeof(event));
4898 event.disassoc_info.addr = addr;
4902 static inline void drv_event_eapol_rx(
void *ctx,
const u8 *src,
const u8 *data,
4906 os_memset(&event, 0,
sizeof(event));
4907 event.eapol_rx.src = src;
4908 event.eapol_rx.data = data;
4909 event.eapol_rx.data_len = data_len;
4920 const char * channel_width_to_string(
enum chan_width width);
int(* sta_add)(void *priv, struct hostapd_sta_add_params *params)
Add a station entry.
Definition: driver.h:2431
int(* get_bssid)(void *priv, u8 *bssid)
Get the current BSSID.
Definition: driver.h:1763
int(* signal_monitor)(void *priv, int threshold, int hysteresis)
Set signal monitoring parameters.
Definition: driver.h:2791
const u8 * bssid
BSSID of the received Probe Request frame or NULL.
Definition: driver.h:4631
const u8 * sae_data
SAE elements for Authentication frame.
Definition: driver.h:473
void(* hapd_deinit)(void *priv)
Deinitialize driver interface (hostapd only)
Definition: driver.h:2246
const u8 * da
Destination address of the received Probe Request frame.
Definition: driver.h:4624
size_t ssid_len
ssid_len: Length of the SSID in octets
Definition: driver.h:319
s32 filter_rssi
Filter by RSSI.
Definition: driver.h:382
int(* set_p2p_powersave)(void *priv, int legacy_ps, int opp_ps, int ctwindow)
Set P2P power save options.
Definition: driver.h:2842
int(* hapd_set_countermeasures)(void *priv, int enabled)
Enable/disable TKIP countermeasures (AP)
Definition: driver.h:2416
size_t num_ssids
Number of entries in ssids array Zero indicates a request for a passive scan.
Definition: driver.h:326
size_t ssid_len
Length of the SSID (1..32)
Definition: driver.h:606
int center_freq2
Segment 1 center frequency in MHz.
Definition: driver.h:565
const char * ifname
Interface name (for multi-SSID/VLAN support)
Definition: driver.h:1545
Data for EVENT_RX_FROM_UNKNOWN events.
Definition: driver.h:4533
Unprotected Disassociation frame received.
Definition: driver.h:3922
int(* set_ieee8021x)(void *priv, struct wpa_bss_params *params)
Enable/disable IEEE 802.1X support (AP only)
Definition: driver.h:2262
unsigned int freq
Frequency of the operational channel in MHz.
Definition: driver.h:4215
Authentication timed out.
Definition: driver.h:3751
unsigned int smps_mode
SMPS mode.
Definition: driver.h:1138
enum hostapd_hw_mode mode
Mode/band (HOSTAPD_MODE_IEEE80211A, ..)
Definition: driver.h:515
Optional data for EVENT_SCAN_RESULTS events.
Definition: driver.h:4600
Request WNM operation.
Definition: driver.h:3985
int(* br_set_net_param)(void *priv, enum drv_br_net_param param, unsigned int val)
Set a bridge network parameter.
Definition: driver.h:2955
u16 ht_capab
HT (IEEE 802.11n) capabilities.
Definition: driver.h:167
int uapsd
UAPSD parameters for the network -1 = do not change defaults AP mode: 1 = enabled, 0 = disabled STA mode: bits 0..3 UAPSD enabled for VO,VI,BK,BE.
Definition: driver.h:833
void(* suspend)(void *priv)
Notification on system suspend/hibernate event.
Definition: driver.h:2769
int(* set_ap)(void *priv, struct wpa_driver_ap_params *params)
Set Beacon and Probe Response information for AP mode.
Definition: driver.h:2218
Settings for channel switch command.
Definition: driver.h:1661
unsigned int max_remain_on_chan
Maximum remain-on-channel duration in msec.
Definition: driver.h:1350
u8 a_mpdu_params
A-MPDU (IEEE 802.11n) parameters.
Definition: driver.h:179
size_t wep_key_len[4]
WEP key length for static WEP configuration.
Definition: driver.h:716
int(* probe_req_report)(void *priv, int report)
Request Probe Request frames to be indicated.
Definition: driver.h:2740
Report hardware push button press for WPS.
Definition: driver.h:3763
const u8 * wep_key[4]
WEP keys for static WEP configuration.
Definition: driver.h:710
int num_rates
Number of entries in the rates array.
Definition: driver.h:155
Notify that channel availability check has been aborted.
Definition: driver.h:4022
int(* add_pmkid)(void *priv, const u8 *bssid, const u8 *pmkid)
Add PMKSA cache entry to the driver.
Definition: driver.h:1934
int ssi_signal
signal strength in dBm (or 0 if not available)
Definition: driver.h:4649
Data for EVENT_STKSTART.
Definition: driver.h:4394
int(* set_freq)(void *priv, struct hostapd_freq_params *freq)
Set channel/frequency (AP only)
Definition: driver.h:2455
int(* set_noa)(void *priv, u8 count, int start, int duration)
Set Notice of Absence parameters for GO (testing)
Definition: driver.h:2832
enum mfp_options mgmt_frame_protection
IEEE 802.11w management frame protection.
Definition: driver.h:728
int(* br_port_set_attr)(void *priv, enum drv_br_port_attr attr, unsigned int val)
Set a bridge port attribute.
Definition: driver.h:2946
int(* leave_mesh)(void *priv)
Leave a mesh network.
Definition: driver.h:3509
int(* stop_ap)(void *priv)
Removes beacon from AP.
Definition: driver.h:3231
const struct wpabuf * proberesp_ies
P2P/WPS IE(s) for Probe Response frames.
Definition: driver.h:1049
int freq
Frequency (in MHz) on which the frame was received.
Definition: driver.h:4562
FT information elements (EVENT_FT_RESPONSE)
Definition: driver.h:4441
int enabled
Whether IEEE 802.1X or WPA/WPA2 is enabled.
Definition: driver.h:1547
s8 min_nf
Minimum observed noise floor, in dBm, based on all surveyed channel data.
Definition: driver.h:107
EVENT_STATION_LOW_ACK.
Definition: driver.h:3931
int(* set_prob_oper_freq)(void *priv, unsigned int freq)
Indicate probable P2P operating channel.
Definition: driver.h:3554
int preamble
Whether short preamble is enabled.
Definition: driver.h:1079
Channel information.
Definition: driver.h:72
AP or GO decided to switch channels.
Definition: driver.h:3977
P2P Group interface (will become either WPA_IF_P2P_GO or WPA_IF_P2P_CLIENT, but the role is not yet k...
Definition: driver.h:1506
const u8 * wpa_ie
WPA information element for (Re)Association Request WPA information element to be included in (Re)Ass...
Definition: driver.h:656
int(* deauthenticate)(void *priv, const u8 *addr, int reason_code)
Request driver to deauthenticate.
Definition: driver.h:1905
int max_sched_scan_ssids
Maximum number of supported active probe SSIDs for sched_scan.
Definition: driver.h:1338
Data for EVENT_TX_STATUS events.
Definition: driver.h:4520
Data for EVENT_TDLS.
Definition: driver.h:4402
int(* join_mesh)(void *priv, struct wpa_driver_mesh_join_params *params)
Join a mesh network.
Definition: driver.h:3501
int(* get_pref_freq_list)(void *priv, enum wpa_driver_if_type if_type, unsigned int *num, unsigned int *freq_list)
Get preferred frequency list for an interface.
Definition: driver.h:3541
Definition: driver.h:1460
const u8 * htcaps
HT Capabilities over-rides.
Definition: driver.h:865
int sec_channel_offset
Secondary channel offset for HT40.
Definition: driver.h:543
unsigned int key_mgmt_suite
Selected key management suite (WPA_KEY_MGMT_*)
Definition: driver.h:692
Request STK handshake (MLME-STKSTART.request)
Definition: driver.h:3683
const u8 * key_replay_ctr
Key replay counter value last used in a valid EAPOL-Key frame.
Definition: driver.h:4250
int(* get_ssid)(void *priv, u8 *ssid)
Get the current SSID.
Definition: driver.h:1780
int * basic_rates
basic_rates: -1 terminated array of basic rates in 100 kbps
Definition: driver.h:962
Data for EVENT_MICHAEL_MIC_FAILURE.
Definition: driver.h:4361
u8 mcs_set[16]
MCS (IEEE 802.11n) rate parameters.
Definition: driver.h:173
Notify that channel availability check has been completed.
Definition: driver.h:4012
int(* get_country)(void *priv, char *alpha2)
Get country.
Definition: driver.h:2125
Data for EVENT_BEST_CHANNEL events.
Definition: driver.h:4684
unsigned int mac_addr_rand
Requests driver to randomize MAC address.
Definition: driver.h:417
size_t ric_ies_len
Length of ric_ies buffer in octets.
Definition: driver.h:4449
const u8 * hessid
Homogeneous ESS identifier or NULL if not set.
Definition: driver.h:1106
size_t key_replay_ctr_len
The length of key_replay_ctr.
Definition: driver.h:4256
int authorized
The following is the key management offload information.
Definition: driver.h:4244
int ap_max_inactivity
Timeout in seconds to detect STA's inactivity.
Definition: driver.h:1123
Station responded to poll.
Definition: driver.h:3963
size_t resp_ies_len
Length of resp_ies in bytes.
Definition: driver.h:4185
unsigned int p2p_probe
Used to disable CCK (802.11b) rates for P2P probes.
Definition: driver.h:392
int(* vendor_cmd)(void *priv, unsigned int vendor_id, unsigned int subcmd, const u8 *data, size_t data_len, struct wpabuf *buf)
Execute vendor specific command.
Definition: driver.h:3018
int(* flush_pmkid)(void *priv)
Flush PMKSA cache.
Definition: driver.h:1972
unsigned int dfs_cac_ms
DFS CAC time in milliseconds.
Definition: driver.h:122
int(* set_wowlan)(void *priv, const struct wowlan_triggers *triggers)
Set wake-on-wireless triggers.
Definition: driver.h:2963
void(* poll_client)(void *priv, const u8 *own_addr, const u8 *addr, int qos)
Probe (null data or such) the given station.
Definition: driver.h:3138
int(* set_wds_sta)(void *priv, const u8 *addr, int aid, int val, const char *bridge_ifname, char *ifname_wds)
Bind a station into a 4-address WDS (AP only)
Definition: driver.h:2645
AP mode BSS interface.
Definition: driver.h:1488
const u8 * prev_bssid
Previously used BSSID in this ESS.
Definition: driver.h:809
reg_type
Regulatory change types.
Definition: driver.h:60
Definition: driver.h:1418
const u8 * ie
Optional IE(s) in Deauthentication frame.
Definition: driver.h:4342
u32 vht_capab
VHT (IEEE 802.11ac) capabilities.
Definition: driver.h:185
int freq_hint
Frequency of the channel the proposed AP is using.
Definition: driver.h:623
Received avoid frequency range.
Definition: driver.h:4064
EVENT_BEST_CHANNEL.
Definition: driver.h:3900
notify of EAPOL TX status
Definition: driver.h:3969
const u8 * ft_md
FT Mobility domain (6 octets) (also included inside ft_ies)
Definition: driver.h:767
const u8 * beacon_ies
Beacon or Probe Response IEs.
Definition: driver.h:4204
unsigned int wpa_version
WPA_PROTO_* bitfield.
Definition: driver.h:1025
WPA Supplicant - Common definitions.
Data for EVENT_DRIVER_GTK_REKEY.
Definition: driver.h:4722
Definition: driver.h:4696
void * drv_priv
Pointer to store driver private BSS information.
Definition: driver.h:4556
const u8 * ssid
The SSID to use in Beacon/Probe Response frames.
Definition: driver.h:983
Scan parameters Data for struct wpa_driver_ops::scan2().
Definition: driver.h:306
unsigned int key_mgmt_suites
WPA_KEY_MGMT_* bitfield.
Definition: driver.h:1013
Data for EVENT_IBSS_PEER_LOST.
Definition: driver.h:4714
void(* deinit)(void *priv)
Deinitialize driver interface.
Definition: driver.h:1870
int(* associate)(void *priv, struct wpa_driver_associate_params *params)
Request driver to associate.
Definition: driver.h:1914
unsigned int wpa_proto
Bitfield of WPA_PROTO_* values to indicate WPA/WPA2.
Definition: driver.h:668
int p2p
Whether this connection is a P2P group.
Definition: driver.h:825
const u8 * extended_capa
extended capabilities in driver/device
Definition: driver.h:1384
wpa_driver_if_type
Definition: driver.h:1466
int(* set_mac_addr)(void *priv, const u8 *addr)
Set MAC address.
Definition: driver.h:3289
int(* tdls_disable_channel_switch)(void *priv, const u8 *addr)
Disable channel switching with TDLS peer.
Definition: driver.h:3212
struct mesh_peer
Definition: driver.h:4836
int fixed_freq
Fix control channel in IBSS mode 0 = don't fix control channel (default) 1 = fix control channel; thi...
Definition: driver.h:848
void wpa_supplicant_event(void *ctx, enum wpa_event_type event, union wpa_event_data *data)
Report a driver event for wpa_supplicant.
Definition: events.c:3199
new (unknown) mesh peer notification
Definition: driver.h:4070
enum hostapd_hw_mode mode
Hardware mode.
Definition: driver.h:137
int locally_generated
Whether the frame was locally generated.
Definition: driver.h:4317
Data for EVENT_IBSS_RSN_START.
Definition: driver.h:4456
size_t ie_len
Length of ie buffer in octets.
Definition: driver.h:4311
unsigned int enc
Bitfield of supported cipher suites.
Definition: driver.h:1224
size_t ssid_len
Length of the SSID (1..32)
Definition: driver.h:989
void(* send_action_cancel_wait)(void *priv)
Cancel action frame TX wait.
Definition: driver.h:2686
int ssi_signal
Signal strength in dBm (or 0 if not available)
Definition: driver.h:4568
size_t ie_len
Length of ie buffer in octets.
Definition: driver.h:4643
int ht_opmode
HT operation mode or -1 if HT not in use.
Definition: driver.h:1094
P2P Group Owner.
Definition: driver.h:1494
const u8 * ptk_kck
The derived PTK KCK.
Definition: driver.h:4262
const u8 * ssid
The selected SSID.
Definition: driver.h:600
Definition: ieee802_11_defs.h:634
int freq
Primary channel center frequency in MHz.
Definition: driver.h:521
Scheduled scan was stopped.
Definition: driver.h:3954
unsigned int only_new_results
Request driver to report only new results.
Definition: driver.h:402
int(* set_country)(void *priv, const char *alpha2)
Set country.
Definition: driver.h:2117
Data for EVENT_ASSOC_REJECT events.
Definition: driver.h:4478
Scan result for an BSS/IBSS.
Definition: driver.h:253
int(* get_inact_sec)(void *priv, const u8 *addr)
Get station inactivity duration (AP only)
Definition: driver.h:2439
int(* send_action)(void *priv, unsigned int freq, unsigned int wait, const u8 *dst, const u8 *src, const u8 *bssid, const u8 *data, size_t data_len, int no_cck)
Transmit an Action frame.
Definition: driver.h:2674
Authentication lost.
Definition: driver.h:3735
Survey result data for EVENT_SURVEY.
Definition: driver.h:4802
int(* set_supp_port)(void *priv, int authorized)
Set IEEE 802.1X Supplicant Port status.
Definition: driver.h:2631
size_t head_len
Length of the head buffer in octets.
Definition: driver.h:930
struct ch_switch
Definition: driver.h:4761
size_t extra_ies_len
Length of extra_ies in octets.
Definition: driver.h:338
int(* if_remove)(void *priv, enum wpa_driver_if_type type, const char *ifname)
Remove a virtual interface.
Definition: driver.h:2529
Data for radar detected events.
Definition: driver.h:4787
struct hostapd_freq_params * freq
Channel parameters for dynamic bandwidth changes.
Definition: driver.h:1156
int(* set_frag)(void *priv, int frag)
Set fragmentation threshold.
Definition: driver.h:2471
int bg_scan_period
Background scan period in seconds, 0 to disable background scan, or -1 to indicate no change to defau...
Definition: driver.h:630
int bandwidth
Channel bandwidth in MHz (20, 40, 80, 160)
Definition: driver.h:571
int(* status)(void *priv, char *buf, size_t buflen)
Get driver interface status information.
Definition: driver.h:3265
unsigned int duration
Duration to remain on the channel in milliseconds.
Definition: driver.h:4588
WPS provisioning with AP that is in open mode.
Definition: driver.h:497
int(* sta_remove)(void *priv, const u8 *addr)
Remove a station entry (AP only)
Definition: driver.h:2382
int reenable
Whether this is to re-enable beaconing.
Definition: driver.h:1162
int(* deinit_p2p_cli)(void *priv)
Deinitialize P2P client mode.
Definition: driver.h:2763
Request TDLS operation.
Definition: driver.h:3691
short chan
Channel number (IEEE 802.11)
Definition: driver.h:77
int disable_dgaf
Whether group-addressed frames are disabled.
Definition: driver.h:1144
Remain-on-channel duration started.
Definition: driver.h:3791
Device/driver did GTK rekey.
Definition: driver.h:3948
int beacon_int
Beacon interval.
Definition: driver.h:954
Scan results available.
Definition: driver.h:3618
int(* ampdu)(void *priv, int ampdu)
Enable/disable aggregation.
Definition: driver.h:2851
u8 * tail
Beacon tail following TIM IE.
Definition: driver.h:936
Received survey data.
Definition: driver.h:4043
size_t proberesp_len
Length of the proberesp buffer in octets.
Definition: driver.h:977
Definition: ieee802_11_defs.h:668
Notify that non-occupancy period is over.
Definition: driver.h:4030
int(* br_delete_ip_neigh)(void *priv, u8 version, const u8 *ipaddr)
Remove a neigh from the bridge ip neigh table.
Definition: driver.h:2938
Network interface information.
Definition: driver.h:293
int(* set_sta_vlan)(void *priv, const u8 *addr, const char *ifname, int vlan_id)
Bind a station into a specific interface (AP only)
Definition: driver.h:2546
Indicate change in signal strength.
Definition: driver.h:3847
int(* br_add_ip_neigh)(void *priv, u8 version, const u8 *ipaddr, int prefixlen, const u8 *addr)
Add a neigh to the bridge ip neigh table.
Definition: driver.h:2928
Data for EVENT_DRIVER_CLIENT_POLL_OK events.
Definition: driver.h:4731
int(* del_tx_ts)(void *priv, u8 tsid, const u8 *addr)
Delete traffic stream.
Definition: driver.h:3185
WPS provisioning with AP that is using protection.
Definition: driver.h:503
int(* set_generic_elem)(void *priv, const u8 *elem, size_t elem_len)
Add IEs into Beacon/Probe Response frames (AP)
Definition: driver.h:2320
int reassoc
Flag to indicate association or reassociation.
Definition: driver.h:4145
Association lost.
Definition: driver.h:3589
size_t num_filter_ssids
Number of entries in filter_ssids array.
Definition: driver.h:372
int(* set_param)(void *priv, const char *param)
Set driver configuration parameters.
Definition: driver.h:1882
wpa_event_type
Event type for wpa_supplicant_event() calls.
Definition: driver.h:3562
int isolate
Whether to isolate frames between associated stations.
Definition: driver.h:1067
int rrm_used
Flag for indicating whether this association includes support for RRM (Radio Resource Measurements) ...
Definition: driver.h:900
const u8 * ie
Optional IE(s) in Disassociation frame.
Definition: driver.h:4305
int req_key_mgmt_offload
Request key management offload for connection.
Definition: driver.h:894
void(* resume)(void *priv)
Notification on system resume/thaw event.
Definition: driver.h:2775
size_t sae_data_len
Length of sae_data buffer in octets.
Definition: driver.h:479
unsigned int group_suite
Selected group cipher suite (WPA_CIPHER_*)
Definition: driver.h:684
size_t req_ies_len
Length of req_ies in bytes.
Definition: driver.h:4165
u16 reason_code
Reason Code (host byte order) used in.
Definition: driver.h:4336
int(* scan2)(void *priv, struct wpa_driver_scan_params *params)
Request the driver to initiate scan.
Definition: driver.h:2182
void(* set_rekey_info)(void *priv, const u8 *kek, size_t kek_len, const u8 *kck, size_t kck_len, const u8 *replay_ctr)
Set rekey information.
Definition: driver.h:3035
struct dl_list survey_list
Linked list of surveys (struct freq_survey)
Definition: driver.h:101
int vht_enabled
Whether VHT is enabled.
Definition: driver.h:549
const u8 * htcaps_mask
HT Capabilities over-rides mask.
Definition: driver.h:873
const char * name
Name of the driver interface.
Definition: driver.h:1748
int(* stop_sched_scan)(void *priv)
Request the driver to stop a scheduled scan.
Definition: driver.h:3125
unsigned int pairwise_suite
Selected pairwise cipher suite (WPA_CIPHER_*)
Definition: driver.h:676
Notify that interface was disabled.
Definition: driver.h:3865
int cts_protect
Whether CTS protection is enabled.
Definition: driver.h:1073
const char * passphrase
RSN passphrase for PSK.
Definition: driver.h:779
int(* authenticate)(void *priv, struct wpa_driver_auth_params *params)
Request driver to authenticate.
Definition: driver.h:2196
Scan started.
Definition: driver.h:4054
const u8 * bssid
BSSID of the selected AP This can be NULL, if ap_scan=2 mode is used and the driver is responsible fo...
Definition: driver.h:583
void(* poll)(void *priv)
Poll driver for association information.
Definition: driver.h:1996
AP mode VLAN interface.
Definition: driver.h:1480
int max_scan_ssids
Maximum number of supported active probe SSIDs.
Definition: driver.h:1335
u16 reason_code
Reason Code (host byte order) used in.
Definition: driver.h:4299
int(* commit)(void *priv)
Optional commit changes handler (AP only)
Definition: driver.h:2559
int(* send_ether)(void *priv, const u8 *dst, const u8 *src, u16 proto, const u8 *data, size_t data_len)
Send an ethernet packet (AP only)
Definition: driver.h:2571
IBSS peer not reachable anymore.
Definition: driver.h:3937
int(* if_add)(void *priv, enum wpa_driver_if_type type, const char *ifname, const u8 *addr, void *bss_ctx, void **drv_priv, char *force_ifname, u8 *if_addr, const char *bridge, int use_existing)
Add a virtual interface.
Definition: driver.h:2517
struct wpa_freq_range_list freq_range
List of frequency ranges.
Definition: driver.h:4825
const u8 * addr
Station address (for AP mode)
Definition: driver.h:4227
Michael MIC (TKIP) detected.
Definition: driver.h:3601
int(* set_acl)(void *priv, struct hostapd_acl_params *params)
Set ACL in AP mode.
Definition: driver.h:2228
int p2p
Whether this connection is a P2P group.
Definition: driver.h:464
Supported hardware mode information.
Definition: driver.h:132
Definition: driver.h:4512
Authentication result.
Definition: driver.h:3724
const u8 * sa
Source address of the received Probe Request frame.
Definition: driver.h:4617
Doubly-linked list.
Definition: list.h:12
u8 bssid[ETH_ALEN]
BSSID of the PMKID candidate.
Definition: driver.h:4383
Received selected channels by ACS.
Definition: driver.h:4079
int(* get_capa)(void *priv, struct wpa_driver_capa *capa)
Get driver capabilities.
Definition: driver.h:1982
const u8 * resp_ies
(Re)Association Response IEs
Definition: driver.h:4179
enum wps_mode wps
WPS mode.
Definition: driver.h:819
int(* send_mlme)(void *priv, const u8 *data, size_t data_len, int noack, unsigned int freq)
Send management frame from MLME.
Definition: driver.h:2078
Authentication parameters Data for struct wpa_driver_ops::authenticate().
Definition: driver.h:447
int(* get_noa)(void *priv, u8 *buf, size_t buf_len)
Get current Notice of Absence attribute payload.
Definition: driver.h:2818
Data for EVENT_DEAUTH events.
Definition: driver.h:4324
Association parameters Data for struct wpa_driver_ops::associate().
Definition: driver.h:578
int(* hapd_get_ssid)(void *priv, u8 *buf, int len)
Get the current SSID (AP only)
Definition: driver.h:2394
Indicate received Probe Request frame.
Definition: driver.h:3816
int(* do_acs)(void *priv, struct drv_acs_params *params)
Automatically select channel.
Definition: driver.h:3520
Definition: driver.h:1165
int(* set_operstate)(void *priv, int state)
Sets device operating state to DORMANT or UP.
Definition: driver.h:2035
struct eapol_tx_status
Definition: driver.h:4745
int(* set_ap_wps_ie)(void *priv, const struct wpabuf *beacon, const struct wpabuf *proberesp, const struct wpabuf *assocresp)
Add WPS IE(s) into Beacon/Probe Response frames (AP)
Definition: driver.h:2621
hostapd_hw_mode
Hardware mode.
Definition: defs.h:302
int(* sta_deauth)(void *priv, const u8 *own_addr, const u8 *addr, int reason)
Deauthenticate a station (AP only)
Definition: driver.h:2359
int sched_scan_supported
Whether sched_scan (offloaded scanning) is supported.
Definition: driver.h:1341
Report RX from unknown STA.
Definition: driver.h:3775
int(* remove_pmkid)(void *priv, const u8 *bssid, const u8 *pmkid)
Remove PMKSA cache entry to the driver.
Definition: driver.h:1954
New wired device noticed.
Definition: driver.h:3828
size_t wpa_ie_len
length of the wpa_ie
Definition: driver.h:662
int(* get_survey)(void *priv, unsigned int freq)
Retrieve survey data.
Definition: driver.h:3256
unsigned int low_priority
Requests driver to use a lower scan priority.
Definition: driver.h:411
Definition: driver.h:1543
int wep_tx_keyidx
WEP TX key index for static WEP configuration.
Definition: driver.h:722
int(* sta_disassoc)(void *priv, const u8 *own_addr, const u8 *addr, int reason)
Disassociate a station (AP only)
Definition: driver.h:2373
int channel
Channel number.
Definition: driver.h:527
Data for EVENT_STATION_LOW_ACK events.
Definition: driver.h:4706
Report optional extra information for association.
Definition: driver.h:3632
Driver interface API definition.
Definition: driver.h:1746
int(* deinit_ap)(void *priv)
Deinitialize AP mode.
Definition: driver.h:2752
int(* tdls_enable_channel_switch)(void *priv, const u8 *addr, u8 oper_class, const struct hostapd_freq_params *params)
Enable channel-switching with TDLS peer.
Definition: driver.h:3199
int interworking
Whether Interworking is enabled.
Definition: driver.h:1100
int preauth
Whether RSN IE includes pre-authenticate flag.
Definition: driver.h:4387
Remain-on-channel timed out.
Definition: driver.h:3802
int(* send_frame)(void *priv, const u8 *data, size_t data_len, int encrypt)
Send IEEE 802.11 frame (testing use only)
Definition: driver.h:2804
int(* mlme_setprotection)(void *priv, const u8 *addr, int protect_type, int key_type)
MLME-SETPROTECTION.request primitive.
Definition: driver.h:2053
size_t ft_ies_len
Length of ft_ies in bytes.
Definition: driver.h:757
u8 vht_mcs_set[8]
VHT MCS (IEEE 802.11ac) rate parameters.
Definition: driver.h:191
Association completed.
Definition: driver.h:3576
Unprotected Deauthentication frame received.
Definition: driver.h:3911
int(* signal_poll)(void *priv, struct wpa_signal_info *signal_info)
Get current connection information.
Definition: driver.h:2970
Data for EVENT_NEW_STA events.
Definition: driver.h:4656
Data for EVENT_INTERFACE_STATUS.
Definition: driver.h:4370
const u8 * ft_ies
IEEE 802.11r / FT information elements If the supplicant is using IEEE 802.11r (FT) and has the neede...
Definition: driver.h:751
Data for EVENT_RX_PROBE_REQ events.
Definition: driver.h:4612
unsigned int auth
Bitfield of supported IEEE 802.11 authentication algorithms.
Definition: driver.h:1230
int mode
Operation mode (infra/ibss) IEEE80211_MODE_*.
Definition: driver.h:704
int freq
Frequency in MHz.
Definition: driver.h:83
Station mode interface.
Definition: driver.h:1471
const struct wpabuf * assocresp_ies
WPS IE(s) for (Re)Association Response frames.
Definition: driver.h:1058
Data for EVENT_PMKID_CANDIDATE.
Definition: driver.h:4381
int(* set_rts)(void *priv, int rts)
Set RTS threshold.
Definition: driver.h:2463
u8 max_tx_power
Regulatory transmit power limit in dBm.
Definition: driver.h:95
int(* add_tx_ts)(void *priv, u8 tsid, const u8 *addr, u8 user_prio, u16 admitted_time)
Add traffic stream.
Definition: driver.h:3175
Data for EVENT_ACS_CHANNEL_SELECTED.
Definition: driver.h:4853
Channel list changed.
Definition: driver.h:3875
Notify that channel availability check has been started.
Definition: driver.h:4088
Definition: driver.h:1715
int(* sta_clear_stats)(void *priv, const u8 *addr)
Clear station statistics (AP only)
Definition: driver.h:2447
int(* set_privacy)(void *priv, int enabled)
Enable/disable privacy (AP only)
Definition: driver.h:2276
int(* switch_channel)(void *priv, struct csa_settings *settings)
Announce channel switch and migrate the GO to the given frequency.
Definition: driver.h:3163
int short_slot_time
Whether short slot time is enabled.
Definition: driver.h:1088
Scan results.
Definition: driver.h:277
Association timed out.
Definition: driver.h:3757
Data for EVENT_WNM.
Definition: driver.h:4416
const u8 * bssid
BSSID of the AP that rejected association.
Definition: driver.h:4483
unsigned int auth_algs
WPA_AUTH_ALG_* bitfield.
Definition: driver.h:1019
struct wpa_signal_info signal_change
Data for EVENT_SIGNAL_CHANGE events.
Definition: driver.h:4674
int drop_unencrypted
Enable/disable unencrypted frame filtering.
Definition: driver.h:800
const u8 * ssid
specific SSID to scan for (ProbeReq) NULL or zero-length SSID is used to indicate active scan with wi...
Definition: driver.h:317
struct hostapd_freq_params freq
channel parameters
Definition: driver.h:612
const u8 * addr
Station address (for AP mode)
Definition: driver.h:4292
unsigned int num_multichan_concurrent
Number of supported concurrent channels.
Definition: driver.h:1375
const u8 * addr
Station address (for AP mode)
Definition: driver.h:4329
SSIDs to scan for.
Definition: driver.h:311
Data for EVENT_ASSOC and EVENT_ASSOCINFO events.
Definition: driver.h:4140
int(* remain_on_channel)(void *priv, unsigned int freq, unsigned int duration)
Remain awake on a channel.
Definition: driver.h:2710
int(* add_tspec)(void *priv, const u8 *addr, u8 *tspec_ie, size_t tspec_ielen)
Add traffic stream.
Definition: driver.h:3083
u8 * proberesp
Probe Response template.
Definition: driver.h:971
const u8 * ptk_kek
The derived PTK KEK.
Definition: driver.h:4274
Notify that interface was enabled.
Definition: driver.h:3856
int index
Smaller the index, higher the priority.
Definition: driver.h:4385
size_t beacon_ies_len
Length of beacon_ies.
Definition: driver.h:4209
int locally_generated
Whether the frame was locally generated.
Definition: driver.h:4354
IEEE 802.11 Frame type definitions Copyright (c) 2007-2008 Intel Corporation.
int(* radio_disable)(void *priv, int disabled)
Disable/enable radio.
Definition: driver.h:3151
int(* update_ft_ies)(void *priv, const u8 *md, const u8 *ies, size_t ies_len)
Update FT (IEEE 802.11r) IEs.
Definition: driver.h:2096
Definition: driver.h:1530
unsigned int key_mgmt
Bitfield of supported key management suites.
Definition: driver.h:1208
int(* set_key)(const char *ifname, void *priv, enum wpa_alg alg, const u8 *addr, int key_idx, int set_tx, const u8 *seq, size_t seq_len, const u8 *key, size_t key_len)
Configure encryption key.
Definition: driver.h:1833
int num_channels
Number of entries in the channels array.
Definition: driver.h:143
No WPS provisioning being used.
Definition: driver.h:491
int(* set_tx_queue_params)(void *priv, int queue, int aifs, int cw_min, int cw_max, int burst_time)
Set TX queue parameters.
Definition: driver.h:2495
int(* set_radius_acl_expire)(void *priv, const u8 *mac)
Notification of RADIUS ACL expiration.
Definition: driver.h:2591
int(* cancel_remain_on_channel)(void *priv)
Cancel remain-on-channel operation.
Definition: driver.h:2724
Request RSN authentication in IBSS.
Definition: driver.h:3712
int(* hapd_set_ssid)(void *priv, const u8 *buf, int len)
Set SSID (AP only)
Definition: driver.h:2405
int(* set_countermeasures)(void *priv, int enabled)
Enable/disable TKIP countermeasures.
Definition: driver.h:1894
int(* add_sta_node)(void *priv, const u8 *addr, u16 auth_alg)
Add a station node in the driver.
Definition: driver.h:3096
int disable_ht
Disable HT (IEEE 802.11n) for this connection.
Definition: driver.h:854
Data for EVENT_EAPOL_RX events.
Definition: driver.h:4664
Report a candidate AP for pre-authentication.
Definition: driver.h:3671
enum hide_ssid hide_ssid
Whether to hide the SSID.
Definition: driver.h:995
unsigned int group_cipher
WPA_CIPHER_*.
Definition: driver.h:1007
mfp_options
Management frame protection (IEEE 802.11w) options.
Definition: defs.h:291
Report TX status.
Definition: driver.h:3769
unsigned int pairwise_ciphers
WPA_CIPHER_* bitfield.
Definition: driver.h:1001
int(* sta_set_flags)(void *priv, const u8 *addr, unsigned int total_flags, unsigned int flags_or, unsigned int flags_and)
Set station flags (AP only)
Definition: driver.h:2482
unsigned int max_stations
Maximum number of associated stations the driver supports in AP mode.
Definition: driver.h:1356
const char * desc
One line description of the driver interface.
Definition: driver.h:1750
Information about channel signal quality.
Definition: driver.h:1607
int dtim_period
DTIM period.
Definition: driver.h:948
WMM parameterss configured for this association.
Definition: driver.h:1692
Driver capability information.
Definition: driver.h:1196
Data for EVENT_CONNECT_FAILED_REASON.
Definition: driver.h:4775
size_t resp_ies_len
Length of resp_ies in bytes.
Definition: driver.h:4503
int osen
Whether OSEN security is enabled.
Definition: driver.h:1150
Channel parameters.
Definition: driver.h:510
int(* sta_auth)(void *priv, const u8 *own_addr, const u8 *addr, u16 seq, u16 status, const u8 *ie, size_t len)
Station authentication indication.
Definition: driver.h:3069
Data for EVENT_DISASSOC events.
Definition: driver.h:4287
size_t ptk_kck_len
The length of ptk_kck.
Definition: driver.h:4268
u8 * head
Beacon head from IEEE 802.11 header to IEs before TIM IE.
Definition: driver.h:924
int max_match_sets
Maximum number of supported match sets for sched_scan.
Definition: driver.h:1344
int * rates
Array of supported rates in 100 kbps units.
Definition: driver.h:161
int beacon_int
Beacon interval for IBSS or 0 to use driver default.
Definition: driver.h:636
int(* set_radius_acl_auth)(void *priv, const u8 *mac, int accepted, u32 session_timeout)
Notification of RADIUS ACL change.
Definition: driver.h:2582
int(* init_mesh)(void *priv)
Driver specific initialization for mesh.
Definition: driver.h:3493
wps_mode
WPS mode.
Definition: driver.h:486
const u8 * mac_addr_mask
MAC address mask used with randomization.
Definition: driver.h:434
const struct wpabuf * beacon_ies
WPS/P2P IE(s) for Beacon frames.
Definition: driver.h:1040
Definition: driver.h:1175
Definition: wpa_auth_i.h:140
int fixed_bssid
Whether to force this BSSID in IBSS mode 1 = Fix this BSSID and prevent merges. 0 = Do not fix BSSID...
Definition: driver.h:840
Report interface status changes.
Definition: driver.h:3644
Definition: driver.h:4690
int(* send_tdls_mgmt)(void *priv, const u8 *dst, u8 action_code, u8 dialog_token, u16 status_code, u32 peer_capab, int initiator, const u8 *buf, size_t len)
for sending TDLS management packets
Definition: driver.h:2882
u8 access_network_type
Access Network Type (0..15)
Definition: driver.h:1115
Data for EVENT_CHANNEL_LIST_CHANGED.
Definition: driver.h:4813
size_t ie_len
Length of ie buffer in octets.
Definition: driver.h:4348
P2P Device interface is used to indentify the abstracted P2P Device function in the driver...
Definition: driver.h:1512
Definition: driver.h:1430
size_t ptk_kek_len
The length of ptk_kek.
Definition: driver.h:4280
Connection failure reason in AP mode.
Definition: driver.h:3995
int center_freq1
Segment 0 center frequency in MHz.
Definition: driver.h:557
int ht_enabled
Whether HT is enabled.
Definition: driver.h:533
int flag
Channel flags (HOSTAPD_CHAN_*)
Definition: driver.h:89
reg_change_initiator
Regulatory change initiator.
Definition: driver.h:48
int(* set_authmode)(void *priv, int authmode)
Set authentication algorithm(s) for static WEP.
Definition: driver.h:2984
int auth_alg
Allowed authentication algorithms Bit field of WPA_AUTH_ALG_*.
Definition: driver.h:698
Association rejected.
Definition: driver.h:3745
P2P Client.
Definition: driver.h:1500
Report received EAPOL frame.
Definition: driver.h:3837
const u8 * bssid_hint
BSSID of a proposed AP.
Definition: driver.h:594
Beacon data.
Definition: driver.h:1637
Channel survey info.
Definition: driver.h:4108
const u8 * ric_ies
Optional IE(s), e.g., WMM TSPEC(s), for RIC-Request.
Definition: driver.h:4447
Filter for reporting SSIDs.
Definition: driver.h:363
size_t tail_len
Length of the tail buffer in octets.
Definition: driver.h:942
Report RX of a management frame.
Definition: driver.h:3781
int(* start_dfs_cac)(void *priv, struct hostapd_freq_params *freq)
Listen for radar interference on the channel.
Definition: driver.h:3220
const u8 * req_ies
(Re)Association Request IEs
Definition: driver.h:4159
const u8 * resp_ies
(Re)Association Response IEs
Definition: driver.h:4497
unsigned int freq
Channel frequency in MHz.
Definition: driver.h:4582
Data for EVENT_REMAIN_ON_CHANNEL events.
Definition: driver.h:4577
hostapd per-BSS data structure
Definition: hostapd.h:103
const u8 * ie
IEs from the Probe Request body.
Definition: driver.h:4637
void(* global_deinit)(void *priv)
Global driver deinitialization.
Definition: driver.h:2147
Definition: driver.h:1456
int(* roaming)(void *priv, int allowed, const u8 *bssid)
Set roaming policy for driver-based BSS selection.
Definition: driver.h:3281
int(* sta_assoc)(void *priv, const u8 *own_addr, const u8 *addr, int reassoc, u16 status, const u8 *ie, size_t len)
Station association indication.
Definition: driver.h:3053
int(* hapd_send_eapol)(void *priv, const u8 *addr, const u8 *data, size_t data_len, int encrypt, const u8 *own_addr, u32 flags)
Send an EAPOL packet (AP only)
Definition: driver.h:2344
u8 p2p_go_ctwindow
Client Traffic Window (in TUs)
Definition: driver.h:1129
const u8 * mac_addr
MAC address used with randomization. The address cannot be a multicast one, i.e., bit 0 of byte 0 sho...
Definition: driver.h:423
Data for EVENT_AUTH events.
Definition: driver.h:4464
const u8 * extra_ies
Extra IE(s) to add into Probe Request or NULL.
Definition: driver.h:332
int(* flush)(void *priv)
Flush all association stations (AP only)
Definition: driver.h:2304
Notify of radar detection.
Definition: driver.h:4004
int(* read_sta_data)(void *priv, struct hostap_sta_driver_data *data, const u8 *addr)
Fetch station data.
Definition: driver.h:2329
union wpa_event_data - Additional data for wpa_supplicant_event() calls
Definition: driver.h:4130
Notify that interface is unavailable.
Definition: driver.h:3891
struct hostapd_channel_data * channels
Array of supported channels.
Definition: driver.h:149
const u8 * psk
RSN PSK (alternative for passphrase for PSK)
Definition: driver.h:790
Report FT (IEEE 802.11r) response IEs.
Definition: driver.h:3701
u16 status_code
Status Code from (Re)association Response.
Definition: driver.h:4509
int(* sched_scan)(void *priv, struct wpa_driver_scan_params *params, u32 interval)
Request the driver to initiate scheduled scan.
Definition: driver.h:3113
int privacy
Whether privacy is used in the BSS.
Definition: driver.h:1031
int(* set_qos_map)(void *priv, const u8 *qos_map_set, u8 qos_map_set_len)
Set QoS Map.
Definition: driver.h:2916
Data for EVENT_RX_MGMT events.
Definition: driver.h:4543
int(* get_seqnum)(const char *ifname, void *priv, const u8 *addr, int idx, u8 *seq)
Fetch the current TSC/packet number (AP only)
Definition: driver.h:2292
int * freqs
Array of frequencies to scan or NULL for all frequencies.
Definition: driver.h:346