wpa_supplicant / hostapd  2.5
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Types | Data Fields
wpa_config Struct Reference

wpa_supplicant configuration data More...

#include <config.h>

Public Types

enum  { P2P_GO_FREQ_MOVE_SCM = 0, P2P_GO_FREQ_MOVE_SCM_PEER_SUPPORTS = 1, P2P_GO_FREQ_MOVE_STAY = 2, P2P_GO_FREQ_MOVE_MAX = P2P_GO_FREQ_MOVE_STAY }
 The GO frequency change policy. More...
 

Data Fields

struct wpa_ssidssid
 Head of the global network list. More...
 
struct wpa_ssid ** pssid
 Per-priority network lists (in priority order)
 
int num_prio
 Number of different priorities used in the pssid lists. More...
 
struct wpa_credcred
 Head of the credential list. More...
 
int eapol_version
 IEEE 802.1X/EAPOL version number. More...
 
int ap_scan
 AP scanning/selection. More...
 
char * bgscan
 Background scan and roaming parameters or NULL if none. More...
 
int disable_scan_offload
 Disable automatic offloading of scan requests. More...
 
char * ctrl_interface
 Parameters for the control interface. More...
 
char * ctrl_interface_group
 Control interface group (DEPRECATED) More...
 
int fast_reauth
 EAP fast re-authentication (session resumption) More...
 
char * opensc_engine_path
 Path to the OpenSSL engine for opensc. More...
 
char * pkcs11_engine_path
 Path to the OpenSSL engine for PKCS#11. More...
 
char * pkcs11_module_path
 Path to the OpenSSL OpenSC/PKCS#11 module. More...
 
char * openssl_ciphers
 OpenSSL cipher string. More...
 
char * pcsc_reader
 PC/SC reader name prefix. More...
 
char * pcsc_pin
 PIN for USIM, GSM SIM, and smartcards. More...
 
int external_sim
 Use external processing for SIM/USIM operations.
 
char * driver_param
 Driver interface parameters. More...
 
unsigned int dot11RSNAConfigPMKLifetime
 Maximum lifetime of a PMK. More...
 
unsigned int dot11RSNAConfigPMKReauthThreshold
 PMK re-authentication threshold. More...
 
unsigned int dot11RSNAConfigSATimeout
 Security association timeout. More...
 
int update_config
 Is wpa_supplicant allowed to update configuration. More...
 
struct wpa_config_blobblobs
 Configuration blobs.
 
u8 uuid [16]
 Universally Unique IDentifier (UUID; see RFC 4122) for WPS.
 
char * device_name
 Device Name (WPS) User-friendly description of device; up to 32 octets encoded in UTF-8.
 
char * manufacturer
 Manufacturer (WPS) The manufacturer of the device (up to 64 ASCII characters)
 
char * model_name
 Model Name (WPS) Model of the device (up to 32 ASCII characters)
 
char * model_number
 Model Number (WPS) Additional device description (up to 32 ASCII characters)
 
char * serial_number
 Serial Number (WPS) Serial number of the device (up to 32 characters)
 
u8 device_type [WPS_DEV_TYPE_LEN]
 Primary Device Type (WPS)
 
char * config_methods
 Config Methods. More...
 
u8 os_version [4]
 OS Version (WPS) 4-octet operating system version number.
 
char country [2]
 Country code. More...
 
int wps_cred_processing
 Credential processing. More...
 
u8 sec_device_type [MAX_SEC_DEVICE_TYPES][WPS_DEV_TYPE_LEN]
 Secondary Device Types (P2P)
 
int num_sec_device_types
 
int p2p_listen_reg_class
 
int p2p_listen_channel
 
int p2p_oper_reg_class
 
int p2p_oper_channel
 
int p2p_go_intent
 
char * p2p_ssid_postfix
 
int persistent_reconnect
 
int p2p_intra_bss
 
unsigned int num_p2p_pref_chan
 
struct p2p_channelp2p_pref_chan
 
struct wpa_freq_range_list p2p_no_go_freq
 
int p2p_add_cli_chan
 
int p2p_ignore_shared_freq
 
int p2p_optimize_listen_chan
 
struct wpabufwps_vendor_ext_m1
 
struct wpabufwps_vendor_ext [MAX_WPS_VENDOR_EXT]
 Vendor extension attributes in WPS.
 
int p2p_group_idle
 Maximum idle time in seconds for P2P group. More...
 
enum wpa_config:: { ... }  p2p_go_freq_change_policy
 The GO frequency change policy. More...
 
unsigned int p2p_passphrase_len
 Passphrase length (8..63) for P2P GO. More...
 
unsigned int bss_max_count
 Maximum number of BSS entries to keep in memory.
 
unsigned int bss_expiration_age
 BSS entry age after which it can be expired. More...
 
unsigned int bss_expiration_scan_count
 Expire BSS after number of scans. More...
 
int filter_ssids
 SSID-based scan result filtering. More...
 
int filter_rssi
 RSSI-based scan result filtering. More...
 
unsigned int max_num_sta
 Maximum number of STAs in an AP/P2P GO.
 
int * freq_list
 Array of allowed scan frequencies or NULL for all. More...
 
int scan_cur_freq
 Whether to scan only the current channel. More...
 
unsigned int changed_parameters
 Bitmap of changed parameters since last update.
 
int disassoc_low_ack
 Disassocicate stations with massive packet loss.
 
int interworking
 Whether Interworking (IEEE 802.11u) is enabled.
 
int access_network_type
 Access Network Type. More...
 
u8 hessid [ETH_ALEN]
 Homogenous ESS identifier. More...
 
int hs20
 Hotspot 2.0.
 
int pbc_in_m1
 AP mode WPS probing workaround for PBC with Windows 7. More...
 
char * autoscan
 Automatic scan parameters or NULL if none. More...
 
int wps_nfc_pw_from_config
 NFC Device Password was read from config. More...
 
int wps_nfc_dev_pw_id
 NFC Device Password ID for password token.
 
struct wpabufwps_nfc_dh_pubkey
 NFC DH Public Key for password token.
 
struct wpabufwps_nfc_dh_privkey
 NFC DH Private Key for password token.
 
struct wpabufwps_nfc_dev_pw
 NFC Device Password for password token.
 
char * ext_password_backend
 External password backend or NULL if none. More...
 
int p2p_go_max_inactivity
 
struct hostapd_wmm_ac_params wmm_ac_params [4]
 
int auto_interworking
 Whether to use network selection automatically. More...
 
int p2p_go_ht40
 Default mode for HT40 enable when operating as GO. More...
 
int p2p_go_vht
 Default mode for VHT enable when operating as GO. More...
 
int p2p_go_ctwindow
 CTWindow to use when operating as GO. More...
 
int p2p_disabled
 Whether P2P operations are disabled for this interface.
 
int p2p_no_group_iface
 Whether group interfaces can be used. More...
 
int p2p_cli_probe
 Enable/disable P2P CLI probe request handling. More...
 
int okc
 Whether to enable opportunistic key caching by default. More...
 
enum mfp_options pmf
 Whether to enable/require PMF by default. More...
 
int * sae_groups
 Preference list of enabled groups for SAE. More...
 
int dtim_period
 Default DTIM period in Beacon intervals. More...
 
int beacon_int
 Default Beacon interval in TU. More...
 
struct wpabufap_vendor_elements
 ap_vendor_elements: Vendor specific elements for Beacon/ProbeResp More...
 
int ignore_old_scan_res
 Ignore scan results older than request. More...
 
unsigned int sched_scan_interval
 schedule scan interval
 
int tdls_external_control
 External control for TDLS setup requests. More...
 
u8 ip_addr_go [4]
 
u8 ip_addr_mask [4]
 
u8 ip_addr_start [4]
 
u8 ip_addr_end [4]
 
char * osu_dir
 OSU provider information directory. More...
 
char * wowlan_triggers
 Wake-on-WLAN triggers. More...
 
unsigned int p2p_search_delay
 Extra delay between concurrent search iterations. More...
 
int mac_addr
 MAC address policy default. More...
 
unsigned int rand_addr_lifetime
 Lifetime of random MAC address in seconds.
 
int preassoc_mac_addr
 Pre-association MAC address policy. More...
 
int key_mgmt_offload
 Use key management offload. More...
 
int user_mpm
 MPM residency. More...
 
int max_peer_links
 Maximum number of peer links. More...
 
int cert_in_cb
 Whether to include a peer certificate dump in events. More...
 
int mesh_max_inactivity
 Timeout in seconds to detect STA inactivity. More...
 
int dot11RSNASAERetransPeriod
 Timeout to retransmit SAE Auth frame. More...
 
int passive_scan
 Whether to force passive scan for network connection. More...
 
int reassoc_same_bss_optim
 Whether to optimize reassoc-to-same-BSS.
 
int wps_priority
 Priority for the networks added through WPS. More...
 
char * fst_group_id
 FST group ID.
 
int fst_priority
 priority of the interface within the FST group
 
int fst_llt
 default FST LLT (Link-Lost Timeout) to be used for the interface.
 

Detailed Description

wpa_supplicant configuration data

This data structure is presents the per-interface (radio) configuration data. In many cases, there is only one struct wpa_config instance, but if more than one network interface is being controlled, one instance is used for each.

Member Enumeration Documentation

anonymous enum

The GO frequency change policy.

This controls the behavior of the GO when there is a change in the map of the currently used frequencies in case more than one channel is supported.

Parameters
P2P_GO_FREQ_MOVE_SCMPrefer working in a single channel mode if possible. In case the GO is the only interface using its frequency and there are other station interfaces on other frequencies, the GO will migrate to one of these frequencies.
P2P_GO_FREQ_MOVE_SCM_PEER_SUPPORTSSame as P2P_GO_FREQ_MOVE_SCM, but a transition is possible only in case one of the other used frequencies is one of the frequencies in the intersection of the frequency list of the local device and the peer device.
P2P_GO_FREQ_MOVE_STAYPrefer to stay on the current frequency.

Field Documentation

int wpa_config::access_network_type

Access Network Type.

When Interworking is enabled, scans will be limited to APs that advertise the specified Access Network Type (0..15; with 15 indicating wildcard match).

int wpa_config::ap_scan

AP scanning/selection.

By default, wpa_supplicant requests driver to perform AP scanning and then uses the scan results to select a suitable AP. Another alternative is to allow the driver to take care of AP scanning and selection and use wpa_supplicant just to process EAPOL frames based on IEEE 802.11 association information from the driver.

1: wpa_supplicant initiates scanning and AP selection (default).

0: Driver takes care of scanning, AP selection, and IEEE 802.11 association parameters (e.g., WPA IE generation); this mode can also be used with non-WPA drivers when using IEEE 802.1X mode; do not try to associate with APs (i.e., external program needs to control association). This mode must also be used when using wired Ethernet drivers.

2: like 0, but associate with APs using security policy and SSID (but not BSSID); this can be used, e.g., with ndiswrapper and NDIS drivers to enable operation with hidden SSIDs and optimized roaming; in this mode, the network blocks in the configuration are tried one by one until the driver reports successful association; each network block should have explicit security policy (i.e., only one option in the lists) for key_mgmt, pairwise, group, proto variables.

Note: ap_scan=2 should not be used with the nl80211 driver interface (the current Linux interface). ap_scan=1 is optimized work working with nl80211. For finding networks using hidden SSID, scan_ssid=1 in the network block can be used with nl80211.

struct wpabuf* wpa_config::ap_vendor_elements

ap_vendor_elements: Vendor specific elements for Beacon/ProbeResp

This parameter can be used to define additional vendor specific elements for Beacon and Probe Response frames in AP/P2P GO mode. The format for these element(s) is a hexdump of the raw information elements (id+len+payload for one or more elements).

int wpa_config::auto_interworking

Whether to use network selection automatically.

0 = do not automatically go through Interworking network selection (i.e., require explicit interworking_select command for this) 1 = perform Interworking network selection if one or more credentials have been configured and scan did not find a matching network block

char* wpa_config::autoscan

Automatic scan parameters or NULL if none.

This is an optional set of parameters for automatic scanning within an interface in following format: <autoscan module="" name>="">:<module parameters>="">

int wpa_config::beacon_int

Default Beacon interval in TU.

This parameter can be used to set the default value for network blocks that do not specify beacon_int.

char* wpa_config::bgscan

Background scan and roaming parameters or NULL if none.

This is an optional set of parameters for background scanning and roaming within a network (ESS). For more detailed information see ssid block documentation.

The variable defines default bgscan behavior for all BSS station networks except for those which have their own bgscan configuration.

unsigned int wpa_config::bss_expiration_age

BSS entry age after which it can be expired.

This value controls the time in seconds after which a BSS entry gets removed if it has not been updated or is not in use.

unsigned int wpa_config::bss_expiration_scan_count

Expire BSS after number of scans.

If the BSS entry has not been seen in this many scans, it will be removed. A value of 1 means that entry is removed after the first scan in which the BSSID is not seen. Larger values can be used to avoid BSS entries disappearing if they are not visible in every scan (e.g., low signal quality or interference).

int wpa_config::cert_in_cb

Whether to include a peer certificate dump in events.

This controls whether peer certificates for authentication server and its certificate chain are included in EAP peer certificate events.

char* wpa_config::config_methods

Config Methods.

This is a space-separated list of supported WPS configuration methods. For example, "label virtual_display virtual_push_button keypad". Available methods: usba ethernet label display ext_nfc_token int_nfc_token nfc_interface push_button keypad virtual_display physical_display virtual_push_button physical_push_button.

char wpa_config::country[2]

Country code.

This is the ISO/IEC alpha2 country code for which we are operating in

struct wpa_cred* wpa_config::cred

Head of the credential list.

This is the head for the list of all the configured credentials.

char* wpa_config::ctrl_interface

Parameters for the control interface.

If this is specified, wpa_supplicant will open a control interface that is available for external programs to manage wpa_supplicant. The meaning of this string depends on which control interface mechanism is used. For all cases, the existence of this parameter in configuration is used to determine whether the control interface is enabled.

For UNIX domain sockets (default on Linux and BSD): This is a directory that will be created for UNIX domain sockets for listening to requests from external programs (CLI/GUI, etc.) for status information and configuration. The socket file will be named based on the interface name, so multiple wpa_supplicant processes can be run at the same time if more than one interface is used. /var/run/wpa_supplicant is the recommended directory for sockets and by default, wpa_cli will use it when trying to connect with wpa_supplicant.

Access control for the control interface can be configured by setting the directory to allow only members of a group to use sockets. This way, it is possible to run wpa_supplicant as root (since it needs to change network configuration and open raw sockets) and still allow GUI/CLI components to be run as non-root users. However, since the control interface can be used to change the network configuration, this access needs to be protected in many cases. By default, wpa_supplicant is configured to use gid 0 (root). If you want to allow non-root users to use the control interface, add a new group and change this value to match with that group. Add users that should have control interface access to this group.

When configuring both the directory and group, use following format: DIR=/var/run/wpa_supplicant GROUP=wheel DIR=/var/run/wpa_supplicant GROUP=0 (group can be either group name or gid)

For UDP connections (default on Windows): The value will be ignored. This variable is just used to select that the control interface is to be created. The value can be set to, e.g., udp (ctrl_interface=udp).

For Windows Named Pipe: This value can be used to set the security descriptor for controlling access to the control interface. Security descriptor can be set using Security Descriptor String Format (see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secauthz/security/security_descriptor_string_format.asp). The descriptor string needs to be prefixed with SDDL=. For example, ctrl_interface=SDDL=D: would set an empty DACL (which will reject all connections).

char* wpa_config::ctrl_interface_group

Control interface group (DEPRECATED)

This variable is only used for backwards compatibility. Group for UNIX domain sockets should now be specified using GROUP=group in ctrl_interface variable.

int wpa_config::disable_scan_offload

Disable automatic offloading of scan requests.

By default, wpa_supplicant tries to offload scanning if the driver indicates support for this (sched_scan). This configuration parameter can be used to disable this offloading mechanism.

unsigned int wpa_config::dot11RSNAConfigPMKLifetime

Maximum lifetime of a PMK.

dot11 MIB variable for the maximum lifetime of a PMK in the PMK cache (unit: seconds).

unsigned int wpa_config::dot11RSNAConfigPMKReauthThreshold

PMK re-authentication threshold.

dot11 MIB variable for the percentage of the PMK lifetime that should expire before an IEEE 802.1X reauthentication occurs.

unsigned int wpa_config::dot11RSNAConfigSATimeout

Security association timeout.

dot11 MIB variable for the maximum time a security association shall take to set up (unit: seconds).

int wpa_config::dot11RSNASAERetransPeriod

Timeout to retransmit SAE Auth frame.

This timeout value is used in mesh STA to retransmit SAE Authentication frame. By default: 1000 milliseconds.

char* wpa_config::driver_param

Driver interface parameters.

This text string is passed to the selected driver interface with the optional struct wpa_driver_ops::set_param() handler. This can be used to configure driver specific options without having to add new driver interface functionality.

int wpa_config::dtim_period

Default DTIM period in Beacon intervals.

This parameter can be used to set the default value for network blocks that do not specify dtim_period.

int wpa_config::eapol_version

IEEE 802.1X/EAPOL version number.

wpa_supplicant is implemented based on IEEE Std 802.1X-2004 which defines EAPOL version 2. However, there are many APs that do not handle the new version number correctly (they seem to drop the frames completely). In order to make wpa_supplicant interoperate with these APs, the version number is set to 1 by default. This configuration value can be used to set it to the new version (2).

char* wpa_config::ext_password_backend

External password backend or NULL if none.

format: <backend name>="">[:<optional backend="" parameters>="">]

int wpa_config::fast_reauth

EAP fast re-authentication (session resumption)

By default, fast re-authentication is enabled for all EAP methods that support it. This variable can be used to disable fast re-authentication (by setting fast_reauth=0). Normally, there is no need to disable fast re-authentication.

int wpa_config::filter_rssi

RSSI-based scan result filtering.

0 = do not filter scan results -n = filter scan results below -n dBm

int wpa_config::filter_ssids

SSID-based scan result filtering.

0 = do not filter scan results 1 = only include configured SSIDs in scan results/BSS table

int* wpa_config::freq_list

Array of allowed scan frequencies or NULL for all.

This is an optional zero-terminated array of frequencies in megahertz (MHz) to allow for narrowing scanning range.

u8 wpa_config::hessid[ETH_ALEN]

Homogenous ESS identifier.

If this is set (any octet is non-zero), scans will be used to request response only from BSSes belonging to the specified Homogeneous ESS. This is used only if interworking is enabled.

int wpa_config::ignore_old_scan_res

Ignore scan results older than request.

The driver may have a cache of scan results that makes it return information that is older than our scan trigger. This parameter can be used to configure such old information to be ignored instead of allowing it to update the internal BSS table.

int wpa_config::key_mgmt_offload

Use key management offload.

Key management offload should be used if the device supports it. Key management offload is the capability of a device operating as a station to do the exchange necessary to establish temporal keys during initial RSN connection, after roaming, or during a PTK rekeying operation.

int wpa_config::mac_addr

MAC address policy default.

0 = use permanent MAC address 1 = use random MAC address for each ESS connection 2 = like 1, but maintain OUI (with local admin bit set)

By default, permanent MAC address is used unless policy is changed by the per-network mac_addr parameter. Global mac_addr=1 can be used to change this default behavior.

int wpa_config::max_peer_links

Maximum number of peer links.

Maximum number of mesh peering currently maintained by the STA.

int wpa_config::mesh_max_inactivity

Timeout in seconds to detect STA inactivity.

This timeout value is used in mesh STA to clean up inactive stations. By default: 300 seconds.

int wpa_config::num_prio

Number of different priorities used in the pssid lists.

This indicates how many per-priority network lists are included in pssid.

int wpa_config::okc

Whether to enable opportunistic key caching by default.

By default, OKC is disabled unless enabled by the per-network proactive_key_caching=1 parameter. okc=1 can be used to change this default behavior.

char* wpa_config::opensc_engine_path

Path to the OpenSSL engine for opensc.

This is an OpenSSL specific configuration option for loading OpenSC engine (engine_opensc.so); if NULL, this engine is not loaded.

char* wpa_config::openssl_ciphers

OpenSSL cipher string.

This is an OpenSSL specific configuration option for configuring the default ciphers. If not set, "DEFAULT:!EXP:!LOW" is used as the default.

char* wpa_config::osu_dir

OSU provider information directory.

If set, allow FETCH_OSU control interface command to be used to fetch OSU provider information into all APs and store the results in this directory.

int wpa_config::p2p_cli_probe

Enable/disable P2P CLI probe request handling.

If this parameter is set to 1, a connected P2P Client will receive and handle Probe Request frames. Setting this parameter to 0 disables this option. Default value: 0.

Note: Setting this property at run time takes effect on the following interface state transition to/from the WPA_COMPLETED state.

int wpa_config::p2p_go_ctwindow

CTWindow to use when operating as GO.

By default: 0 (no CTWindow). Values 0-127 can be used to indicate the length of the CTWindow in TUs.

enum { ... } wpa_config::p2p_go_freq_change_policy

The GO frequency change policy.

This controls the behavior of the GO when there is a change in the map of the currently used frequencies in case more than one channel is supported.

Parameters
P2P_GO_FREQ_MOVE_SCMPrefer working in a single channel mode if possible. In case the GO is the only interface using its frequency and there are other station interfaces on other frequencies, the GO will migrate to one of these frequencies.
P2P_GO_FREQ_MOVE_SCM_PEER_SUPPORTSSame as P2P_GO_FREQ_MOVE_SCM, but a transition is possible only in case one of the other used frequencies is one of the frequencies in the intersection of the frequency list of the local device and the peer device.
P2P_GO_FREQ_MOVE_STAYPrefer to stay on the current frequency.
int wpa_config::p2p_go_ht40

Default mode for HT40 enable when operating as GO.

This will take effect for p2p_group_add, p2p_connect, and p2p_invite. Note that regulatory constraints and driver capabilities are consulted anyway, so setting it to 1 can't do real harm. By default: 0 (disabled)

int wpa_config::p2p_go_vht

Default mode for VHT enable when operating as GO.

This will take effect for p2p_group_add, p2p_connect, and p2p_invite. Note that regulatory constraints and driver capabilities are consulted anyway, so setting it to 1 can't do real harm. By default: 0 (disabled)

int wpa_config::p2p_group_idle

Maximum idle time in seconds for P2P group.

This value controls how long a P2P group is maintained after there is no other members in the group. As a GO, this means no associated stations in the group. As a P2P client, this means no GO seen in scan results. The maximum idle time is specified in seconds with 0 indicating no time limit, i.e., the P2P group remains in active state indefinitely until explicitly removed. As a P2P client, the maximum idle time of P2P_MAX_CLIENT_IDLE seconds is enforced, i.e., this parameter is mainly meant for GO use and for P2P client, it can only be used to reduce the default timeout to smaller value. A special value -1 can be used to configure immediate removal of the group for P2P client role on any disconnection after the data connection has been established.

int wpa_config::p2p_no_group_iface

Whether group interfaces can be used.

By default, wpa_supplicant will create a separate interface for P2P group operations if the driver supports this. This functionality can be disabled by setting this parameter to 1. In that case, the same interface that was used for the P2P management operations is used also for the group operation.

unsigned int wpa_config::p2p_passphrase_len

Passphrase length (8..63) for P2P GO.

This parameter controls the length of the random passphrase that is generated at the GO.

unsigned int wpa_config::p2p_search_delay

Extra delay between concurrent search iterations.

Add extra delay (in milliseconds) between search iterations when there is a concurrent operation to make p2p_find friendlier to concurrent operations by avoiding it from taking 100% of radio resources.

int wpa_config::passive_scan

Whether to force passive scan for network connection.

This parameter can be used to force only passive scanning to be used for network connection cases. It should be noted that this will slow down scan operations and reduce likelihood of finding the AP. In addition, some use cases will override this due to functional requirements, e.g., for finding an AP that uses hidden SSID (scan_ssid=1) or P2P device discovery.

int wpa_config::pbc_in_m1

AP mode WPS probing workaround for PBC with Windows 7.

Windows 7 uses incorrect way of figuring out AP's WPS capabilities by acting as a Registrar and using M1 from the AP. The config methods attribute in that message is supposed to indicate only the configuration method supported by the AP in Enrollee role, i.e., to add an external Registrar. For that case, PBC shall not be used and as such, the PushButton config method is removed from M1 by default. If pbc_in_m1=1 is included in the configuration file, the PushButton config method is left in M1 (if included in config_methods parameter) to allow Windows 7 to use PBC instead of PIN (e.g., from a label in the AP).

char* wpa_config::pcsc_pin

PIN for USIM, GSM SIM, and smartcards.

This field is used to configure PIN for SIM/USIM for EAP-SIM and EAP-AKA. If left out, this will be asked through control interface.

char* wpa_config::pcsc_reader

PC/SC reader name prefix.

If not NULL, PC/SC reader with a name that matches this prefix is initialized for SIM/USIM access. Empty string can be used to match the first available reader.

char* wpa_config::pkcs11_engine_path

Path to the OpenSSL engine for PKCS#11.

This is an OpenSSL specific configuration option for loading PKCS#11 engine (engine_pkcs11.so); if NULL, this engine is not loaded.

char* wpa_config::pkcs11_module_path

Path to the OpenSSL OpenSC/PKCS#11 module.

This is an OpenSSL specific configuration option for configuring path to OpenSC/PKCS#11 engine (opensc-pkcs11.so); if NULL, this module is not loaded.

enum mfp_options wpa_config::pmf

Whether to enable/require PMF by default.

By default, PMF is disabled unless enabled by the per-network ieee80211w=1 or ieee80211w=2 parameter. pmf=1/2 can be used to change this default behavior.

int wpa_config::preassoc_mac_addr

Pre-association MAC address policy.

0 = use permanent MAC address 1 = use random MAC address 2 = like 1, but maintain OUI (with local admin bit set)

int* wpa_config::sae_groups

Preference list of enabled groups for SAE.

By default (if this parameter is not set), the mandatory group 19 (ECC group defined over a 256-bit prime order field) is preferred, but other groups are also enabled. If this parameter is set, the groups will be tried in the indicated order.

int wpa_config::scan_cur_freq

Whether to scan only the current channel.

If true, attempt to scan only the current channel if any other VIFs on this radio are already associated on a particular channel.

struct wpa_ssid* wpa_config::ssid

Head of the global network list.

This is the head for the list of all the configured networks.

int wpa_config::tdls_external_control

External control for TDLS setup requests.

Enable TDLS mode where external programs are given the control to specify the TDLS link to get established to the driver. The driver requests the TDLS setup to the supplicant only for the specified TDLS peers.

int wpa_config::update_config

Is wpa_supplicant allowed to update configuration.

This variable control whether wpa_supplicant is allow to re-write its configuration with wpa_config_write(). If this is zero, configuration data is only changed in memory and the external data is not overriden. If this is non-zero, wpa_supplicant will update the configuration data (e.g., a file) whenever configuration is changed. This update may replace the old configuration which can remove comments from it in case of a text file configuration.

int wpa_config::user_mpm

MPM residency.

0: MPM lives in driver. 1: wpa_supplicant handles peering and station allocation.

If AMPE or SAE is enabled, the MPM is always in userspace.

char* wpa_config::wowlan_triggers

Wake-on-WLAN triggers.

If set, these wowlan triggers will be configured.

int wpa_config::wps_cred_processing

Credential processing.

0 = process received credentials internally 1 = do not process received credentials; just pass them over ctrl_iface to external program(s) 2 = process received credentials internally and pass them over ctrl_iface to external program(s)

int wpa_config::wps_nfc_pw_from_config

NFC Device Password was read from config.

This parameter can be determined whether the NFC Device Password was included in the configuration (1) or generated dynamically (0). Only the former case is re-written back to the configuration file.

int wpa_config::wps_priority

Priority for the networks added through WPS.

This priority value will be set to each network profile that is added by executing the WPS protocol.


The documentation for this struct was generated from the following file: