8 #define DEFAULT_EAPOL_VERSION 1
9 #ifdef CONFIG_NO_SCAN_PROCESSING
10 #define DEFAULT_AP_SCAN 2
12 #define DEFAULT_AP_SCAN 1
14 #define DEFAULT_USER_MPM 1
15 #define DEFAULT_MAX_PEER_LINKS 99
16 #define DEFAULT_MESH_MAX_INACTIVITY 300
21 #define DEFAULT_DOT11_RSNA_SAE_RETRANS_PERIOD 1000
22 #define DEFAULT_FAST_REAUTH 1
23 #define DEFAULT_P2P_GO_INTENT 7
24 #define DEFAULT_P2P_INTRA_BSS 1
25 #define DEFAULT_P2P_GO_MAX_INACTIVITY (5 * 60)
26 #define DEFAULT_P2P_OPTIMIZE_LISTEN_CHAN 0
27 #define DEFAULT_BSS_MAX_COUNT 200
28 #define DEFAULT_BSS_EXPIRATION_AGE 180
29 #define DEFAULT_BSS_EXPIRATION_SCAN_COUNT 2
30 #define DEFAULT_MAX_NUM_STA 128
31 #define DEFAULT_ACCESS_NETWORK_TYPE 15
32 #define DEFAULT_SCAN_CUR_FREQ 0
33 #define DEFAULT_P2P_SEARCH_DELAY 500
34 #define DEFAULT_RAND_ADDR_LIFETIME 60
35 #define DEFAULT_KEY_MGMT_OFFLOAD 1
36 #define DEFAULT_CERT_IN_CB 1
37 #define DEFAULT_P2P_GO_CTWINDOW 0
239 u8 required_roaming_consortium[15];
240 size_t required_roaming_consortium_len;
269 u8 ssid[SSID_MAX_LEN];
272 size_t num_excluded_ssid;
280 size_t num_roaming_partner;
282 int update_identifier;
301 unsigned int min_dl_bandwidth_home;
302 unsigned int min_ul_bandwidth_home;
303 unsigned int min_dl_bandwidth_roaming;
304 unsigned int min_ul_bandwidth_roaming;
315 unsigned int num_req_conn_capab;
316 u8 *req_conn_capab_proto;
317 int **req_conn_capab_port;
340 #define CFG_CHANGED_DEVICE_NAME BIT(0)
341 #define CFG_CHANGED_CONFIG_METHODS BIT(1)
342 #define CFG_CHANGED_DEVICE_TYPE BIT(2)
343 #define CFG_CHANGED_OS_VERSION BIT(3)
344 #define CFG_CHANGED_UUID BIT(4)
345 #define CFG_CHANGED_COUNTRY BIT(5)
346 #define CFG_CHANGED_SEC_DEVICE_TYPE BIT(6)
347 #define CFG_CHANGED_P2P_SSID_POSTFIX BIT(7)
348 #define CFG_CHANGED_WPS_STRING BIT(8)
349 #define CFG_CHANGED_P2P_INTRA_BSS BIT(9)
350 #define CFG_CHANGED_VENDOR_EXTENSION BIT(10)
351 #define CFG_CHANGED_P2P_LISTEN_CHANNEL BIT(11)
352 #define CFG_CHANGED_P2P_OPER_CHANNEL BIT(12)
353 #define CFG_CHANGED_P2P_PREF_CHAN BIT(13)
354 #define CFG_CHANGED_EXT_PW_BACKEND BIT(14)
355 #define CFG_CHANGED_NFC_PASSWORD_TOKEN BIT(15)
356 #define CFG_CHANGED_P2P_PASSPHRASE_LEN BIT(16)
751 #define MAX_SEC_DEVICE_TYPES 5
757 int num_sec_device_types;
759 int p2p_listen_reg_class;
760 int p2p_listen_channel;
761 int p2p_oper_reg_class;
762 int p2p_oper_channel;
764 char *p2p_ssid_postfix;
765 int persistent_reconnect;
767 unsigned int num_p2p_pref_chan;
770 int p2p_add_cli_chan;
771 int p2p_ignore_shared_freq;
772 int p2p_optimize_listen_chan;
774 struct wpabuf *wps_vendor_ext_m1;
776 #define MAX_WPS_VENDOR_EXT 10
823 P2P_GO_FREQ_MOVE_SCM = 0,
824 P2P_GO_FREQ_MOVE_SCM_PEER_SUPPORTS = 1,
825 P2P_GO_FREQ_MOVE_STAY = 2,
826 P2P_GO_FREQ_MOVE_MAX = P2P_GO_FREQ_MOVE_STAY,
829 #define DEFAULT_P2P_GO_FREQ_MOVE P2P_GO_FREQ_MOVE_STAY
1029 int p2p_go_max_inactivity;
1196 u8 ip_addr_start[4];
1370 void (*func)(
void *,
struct wpa_ssid *),
1378 int wpa_config_set_quoted(
struct wpa_ssid *
ssid,
const char *var,
1380 int wpa_config_dump_values(
struct wpa_config *config,
char *buf,
1382 int wpa_config_get_value(
const char *name,
struct wpa_config *config,
1383 char *buf,
size_t buflen);
1398 void wpa_config_flush_blobs(
struct wpa_config *config);
1402 int wpa_config_remove_cred(
struct wpa_config *config,
int id);
1403 void wpa_config_free_cred(
struct wpa_cred *cred);
1404 int wpa_config_set_cred(
struct wpa_cred *cred,
const char *var,
1405 const char *value,
int line);
1406 char * wpa_config_get_cred_no_key(
struct wpa_cred *cred,
const char *var);
1410 #ifndef CONFIG_NO_STDOUT_DEBUG
1413 #define wpa_config_debug_dump_networks(c) do { } while (0)
1418 int wpa_config_process_global(
struct wpa_config *config,
char *pos,
int line);
struct wpabuf * wps_nfc_dh_privkey
NFC DH Private Key for password token.
Definition: config.h:1006
char * pcsc_pin
PIN for USIM, GSM SIM, and smartcards.
Definition: config.h:601
int passive_scan
Whether to force passive scan for network connection.
Definition: config.h:1328
char * phase1
Phase 1 (outer authentication) parameters.
Definition: config.h:258
int external_sim
Use external processing for SIM/USIM operations.
Definition: config.h:607
struct wpa_ssid ** pssid
Per-priority network lists (in priority order)
Definition: config.h:380
unsigned int dot11RSNAConfigPMKReauthThreshold
PMK re-authentication threshold.
Definition: config.h:636
int p2p_no_group_iface
Whether group interfaces can be used.
Definition: config.h:1092
const struct wpa_config_blob * wpa_config_get_blob(struct wpa_config *config, const char *name)
Get a named configuration blob.
Definition: config.c:3414
int wps_nfc_pw_from_config
NFC Device Password was read from config.
Definition: config.h:988
int pcsc
Use PC/SC and SIM/USIM card.
Definition: config.h:90
int priority
Priority group.
Definition: config.h:84
struct wpa_cred * next
Next credential in the list.
Definition: config.h:53
int eapol_version
IEEE 802.1X/EAPOL version number.
Definition: config.h:410
int okc
Whether to enable opportunistic key caching by default.
Definition: config.h:1115
IEEE 802.11 Common routines.
enum wpa_config::@1 p2p_go_freq_change_policy
The GO frequency change policy.
char * client_cert
File path to client certificate file (PEM/DER)
Definition: config.h:134
char country[2]
Country code.
Definition: config.h:737
int user_mpm
MPM residency.
Definition: config.h:1279
char * model_number
Model Number (WPS) Additional device description (up to 32 ASCII characters)
Definition: config.h:696
void wpa_config_foreach_network(struct wpa_config *config, void(*func)(void *, struct wpa_ssid *), void *arg)
Iterate over each configured network.
Definition: config.c:2284
void wpa_config_free_ssid(struct wpa_ssid *ssid)
Free network/ssid configuration data.
Definition: config.c:2128
int pbc_in_m1
AP mode WPS probing workaround for PBC with Windows 7.
Definition: config.h:968
int fst_llt
default FST LLT (Link-Lost Timeout) to be used for the interface.
Definition: config.h:1361
int disassoc_low_ack
Disassocicate stations with massive packet loss.
Definition: config.h:919
char * username
Username for Interworking network selection.
Definition: config.h:102
int num_prio
Number of different priorities used in the pssid lists.
Definition: config.h:389
struct wpabuf * wps_nfc_dev_pw
NFC Device Password for password token.
Definition: config.h:1012
int p2p_disabled
Whether P2P operations are disabled for this interface.
Definition: config.h:1080
int wps_cred_processing
Credential processing.
Definition: config.h:749
char * autoscan
Automatic scan parameters or NULL if none.
Definition: config.h:978
u8 sec_device_type[MAX_SEC_DEVICE_TYPES][WPS_DEV_TYPE_LEN]
Secondary Device Types (P2P)
Definition: config.h:756
int max_peer_links
Maximum number of peer links.
Definition: config.h:1287
char * ctrl_interface
Parameters for the control interface.
Definition: config.h:523
int beacon_int
Default Beacon interval in TU.
Definition: config.h:1154
WPA Supplicant / Network configuration structures.
int access_network_type
Access Network Type.
Definition: config.h:935
char * imsi
IMSI in <MCC> | <MNC> | '-' | <MSIN> format.
Definition: config.h:174
struct wpa_cred * cred
Head of the credential list.
Definition: config.h:397
char * driver_param
Driver interface parameters.
Definition: config.h:618
struct wpabuf * wps_nfc_dh_pubkey
NFC DH Public Key for password token.
Definition: config.h:1000
int wps_nfc_dev_pw_id
NFC Device Password ID for password token.
Definition: config.h:994
char * serial_number
Serial Number (WPS) Serial number of the device (up to 32 characters)
Definition: config.h:702
char * osu_dir
OSU provider information directory.
Definition: config.h:1207
int p2p_go_ctwindow
CTWindow to use when operating as GO.
Definition: config.h:1074
char * fst_group_id
FST group ID.
Definition: config.h:1349
char * opensc_engine_path
Path to the OpenSSL engine for opensc.
Definition: config.h:553
u8 os_version[4]
OS Version (WPS) 4-octet operating system version number.
Definition: config.h:728
size_t num_domain
Number of FQDNs in the domain array.
Definition: config.h:217
unsigned int bss_expiration_age
BSS entry age after which it can be expired.
Definition: config.h:853
struct eap_method_type * eap_method
EAP method to use.
Definition: config.h:250
unsigned int changed_parameters
Bitmap of changed parameters since last update.
Definition: config.h:913
struct wpa_config * wpa_config_alloc_empty(const char *ctrl_interface, const char *driver_param)
Allocate an empty configuration.
Definition: config.c:3494
int key_mgmt_offload
Use key management offload.
Definition: config.h:1268
int * freq_list
Array of allowed scan frequencies or NULL for all.
Definition: config.h:898
int tdls_external_control
External control for TDLS setup requests.
Definition: config.h:1192
u8 uuid[16]
Universally Unique IDentifier (UUID; see RFC 4122) for WPS.
Definition: config.h:671
unsigned int max_num_sta
Maximum number of STAs in an AP/P2P GO.
Definition: config.h:889
void wpa_config_update_psk(struct wpa_ssid *ssid)
Update WPA PSK based on passphrase and SSID.
Definition: config.c:2666
int dot11RSNASAERetransPeriod
Timeout to retransmit SAE Auth frame.
Definition: config.h:1315
wpa_supplicant configuration data
Definition: config.h:367
char * model_name
Model Name (WPS) Model of the device (up to 32 ASCII characters)
Definition: config.h:690
void wpa_config_free(struct wpa_config *ssid)
Free configuration data.
Definition: config.c:2214
char * private_key_passwd
Password for private key file.
Definition: config.h:168
int fast_reauth
EAP fast re-authentication (session resumption)
Definition: config.h:544
char * private_key
File path to client private key file (PEM/DER/PFX)
Definition: config.h:162
int wpa_config_remove_network(struct wpa_config *config, int id)
Remove a configured network based on id.
Definition: config.c:2362
char * ext_password_backend
External password backend or NULL if none.
Definition: config.h:1020
int wps_priority
Priority for the networks added through WPS.
Definition: config.h:1343
int wpa_config_write(const char *name, struct wpa_config *config)
Write or update configuration data.
Definition: config_file.c:1303
u8 roaming_consortium[15]
Roaming Consortium OI.
Definition: config.h:231
int p2p_group_idle
Maximum idle time in seconds for P2P group.
Definition: config.h:800
unsigned int bss_max_count
Maximum number of BSS entries to keep in memory.
Definition: config.h:844
char * config_methods
Config Methods.
Definition: config.h:722
char * pkcs11_engine_path
Path to the OpenSSL engine for PKCS#11.
Definition: config.h:562
char ** wpa_config_get_all(struct wpa_ssid *ssid, int get_keys)
Get all options from network configuration.
Definition: config.c:2527
char * wpa_config_get_no_key(struct wpa_ssid *ssid, const char *var)
Get a variable in network configuration (no keys)
Definition: config.c:2627
char * pcsc_reader
PC/SC reader name prefix.
Definition: config.h:592
char * ctrl_interface_group
Control interface group (DEPRECATED)
Definition: config.h:533
int mesh_max_inactivity
Timeout in seconds to detect STA inactivity.
Definition: config.h:1305
char * ca_cert
CA certificate for Interworking network selection.
Definition: config.h:120
unsigned int max_bss_load
Maximum BSS Load Channel Utilization (1..255) This value is used as the maximum channel utilization f...
Definition: config.h:313
unsigned int dot11RSNAConfigSATimeout
Security association timeout.
Definition: config.h:645
int filter_ssids
SSID-based scan result filtering.
Definition: config.h:874
int filter_rssi
RSSI-based scan result filtering.
Definition: config.h:883
char * wpa_config_get(struct wpa_ssid *ssid, const char *var)
Get a variable in network configuration.
Definition: config.c:2594
unsigned int bss_expiration_scan_count
Expire BSS after number of scans.
Definition: config.h:865
char * wowlan_triggers
Wake-on-WLAN triggers.
Definition: config.h:1215
void wpa_config_set_network_defaults(struct wpa_ssid *ssid)
Set network default values.
Definition: config.c:2392
struct wpa_config_blob * blobs
Configuration blobs.
Definition: config.h:665
Named configuration blob.
Definition: eap_config.h:812
char * provisioning_sp
FQDN of the SP that provisioned the credential.
Definition: config.h:288
int ext_password
Whether password is a name for external storage.
Definition: config.h:114
char * password
Password for Interworking network selection.
Definition: config.h:108
char * manufacturer
Manufacturer (WPS) The manufacturer of the device (up to 64 ASCII characters)
Definition: config.h:684
int interworking
Whether Interworking (IEEE 802.11u) is enabled.
Definition: config.h:925
int ignore_old_scan_res
Ignore scan results older than request.
Definition: config.h:1175
struct wpa_ssid * ssid
Head of the global network list.
Definition: config.h:374
unsigned int sched_scan_interval
schedule scan interval
Definition: config.h:1181
int scan_cur_freq
Whether to scan only the current channel.
Definition: config.h:907
struct wpa_ssid * wpa_config_get_network(struct wpa_config *config, int id)
Get configured network based on id.
Definition: config.c:2305
char * milenage
Milenage parameters for SIM/USIM simulator in.
Definition: config.h:181
char * bgscan
Background scan and roaming parameters or NULL if none.
Definition: config.h:458
void wpa_config_free_blob(struct wpa_config_blob *blob)
Free blob data.
Definition: config.c:3449
u8 * ssid
Service set identifier (network name)
Definition: config_ssid.h:115
int auto_interworking
Whether to use network selection automatically.
Definition: config.h:1043
struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp)
Read and parse configuration database.
Definition: config_file.c:358
void wpa_config_debug_dump_networks(struct wpa_config *config)
Debug dump of configured networks.
Definition: config.c:3554
int * sae_groups
Preference list of enabled groups for SAE.
Definition: config.h:1136
int wpa_config_remove_blob(struct wpa_config *config, const char *name)
Remove a named configuration blob.
Definition: config.c:3465
int wpa_config_add_prio_network(struct wpa_config *config, struct wpa_ssid *ssid)
Add a network to priority lists.
Definition: config.c:1998
int cert_in_cb
Whether to include a peer certificate dump in events.
Definition: config.h:1296
unsigned int p2p_search_delay
Extra delay between concurrent search iterations.
Definition: config.h:1226
enum mfp_options pmf
Whether to enable/require PMF by default.
Definition: config.h:1125
int ap_scan
AP scanning/selection.
Definition: config.h:445
char * device_name
Device Name (WPS) User-friendly description of device; up to 32 octets encoded in UTF-8...
Definition: config.h:678
int temporary
Whether this credential is temporary and not to be saved.
Definition: config.h:71
size_t roaming_consortium_len
Length of roaming_consortium.
Definition: config.h:237
int disable_scan_offload
Disable automatic offloading of scan requests.
Definition: config.h:468
IEEE 802.11 Frame type definitions Copyright (c) 2007-2008 Intel Corporation.
void wpa_config_set_blob(struct wpa_config *config, struct wpa_config_blob *blob)
Set or add a named configuration blob.
Definition: config.c:3436
int fst_priority
priority of the interface within the FST group
Definition: config.h:1355
unsigned int dot11RSNAConfigPMKLifetime
Maximum lifetime of a PMK.
Definition: config.h:627
char * realm
Home Realm for Interworking.
Definition: config.h:96
mfp_options
Management frame protection (IEEE 802.11w) options.
Definition: defs.h:291
struct wpabuf * wps_vendor_ext[MAX_WPS_VENDOR_EXT]
Vendor extension attributes in WPS.
Definition: config.h:781
int sim_num
User selected SIM identifier.
Definition: config.h:336
struct wpabuf * ap_vendor_elements
ap_vendor_elements: Vendor specific elements for Beacon/ProbeResp
Definition: config.h:1164
Definition: ieee802_11_common.h:101
int update_config
Is wpa_supplicant allowed to update configuration.
Definition: config.h:659
int id
Unique id for the credential.
Definition: config.h:65
int dtim_period
Default DTIM period in Beacon intervals.
Definition: config.h:1145
char * pkcs11_module_path
Path to the OpenSSL OpenSC/PKCS#11 module.
Definition: config.h:572
int p2p_go_ht40
Default mode for HT40 enable when operating as GO.
Definition: config.h:1054
struct wpa_ssid * wpa_config_add_network(struct wpa_config *config)
Add a new network with empty configuration.
Definition: config.c:2325
unsigned int p2p_passphrase_len
Passphrase length (8..63) for P2P GO.
Definition: config.h:838
int wpa_config_set(struct wpa_ssid *ssid, const char *var, const char *value, int line)
Set a variable in network configuration.
Definition: config.c:2459
int preassoc_mac_addr
Pre-association MAC address policy.
Definition: config.h:1256
char * openssl_ciphers
OpenSSL cipher string.
Definition: config.h:582
int hs20
Hotspot 2.0.
Definition: config.h:951
char * domain_suffix_match
Constraint for server domain name.
Definition: config.h:200
u8 device_type[WPS_DEV_TYPE_LEN]
Primary Device Type (WPS)
Definition: config.h:708
unsigned int rand_addr_lifetime
Lifetime of random MAC address in seconds.
Definition: config.h:1246
int p2p_go_vht
Default mode for VHT enable when operating as GO.
Definition: config.h:1065
u8 hessid[ETH_ALEN]
Homogenous ESS identifier.
Definition: config.h:945
char * phase2
Phase 2 (inner authentication) parameters.
Definition: config.h:266
Network configuration data.
Definition: config_ssid.h:52
int p2p_cli_probe
Enable/disable P2P CLI probe request handling.
Definition: config.h:1105
int sp_priority
Credential priority within a provisioning SP.
Definition: config.h:299
char * name
Blob name.
Definition: eap_config.h:817
char ** domain
Home service provider FQDN(s)
Definition: config.h:211
int mac_addr
MAC address policy default.
Definition: config.h:1240
int ocsp
Whether to use/require OCSP to check server certificate.
Definition: config.h:327
int wpa_config_update_prio_list(struct wpa_config *config)
Update network priority list.
Definition: config.c:2050
int reassoc_same_bss_optim
Whether to optimize reassoc-to-same-BSS.
Definition: config.h:1334