📄 config_ssid.h
字号:
u8 *ca_cert2; /** * ca_path2 - Directory path for CA certificate files (PEM) (Phase 2) * * This path may contain multiple CA certificates in OpenSSL format. * Common use for this is to point to system trusted CA list which is * often installed into directory like /etc/ssl/certs. If configured, * these certificates are added to the list of trusted CAs. ca_cert * may also be included in that case, but it is not required. * * This field is like ca_path, but used for phase 2 (inside * EAP-TTLS/PEAP/FAST tunnel) authentication. */ u8 *ca_path2; /** * client_cert2 - File path to client certificate file * * This field is like client_cert, but used for phase 2 (inside * EAP-TTLS/PEAP/FAST tunnel) authentication. Full path to the * file should be used since working directory may change when * wpa_supplicant is run in the background. * * Alternatively, a named configuration blob can be used by setting * this to blob://<blob name>. */ u8 *client_cert2; /** * private_key2 - File path to client private key file * * This field is like private_key, but used for phase 2 (inside * EAP-TTLS/PEAP/FAST tunnel) authentication. Full path to the * file should be used since working directory may change when * wpa_supplicant is run in the background. * * Alternatively, a named configuration blob can be used by setting * this to blob://<blob name>. */ u8 *private_key2; /** * private_key2_passwd - Password for private key file * * This field is like private_key_passwd, but used for phase 2 (inside * EAP-TTLS/PEAP/FAST tunnel) authentication. */ u8 *private_key2_passwd; /** * dh_file2 - File path to DH/DSA parameters file (in PEM format) * * This field is like dh_file, but used for phase 2 (inside * EAP-TTLS/PEAP/FAST tunnel) authentication. Full path to the * file should be used since working directory may change when * wpa_supplicant is run in the background. * * Alternatively, a named configuration blob can be used by setting * this to blob://<blob name>. */ u8 *dh_file2; /** * subject_match2 - Constraint for server certificate subject * * This field is like subject_match, but used for phase 2 (inside * EAP-TTLS/PEAP/FAST tunnel) authentication. */ u8 *subject_match2; /** * altsubject_match2 - Constraint for server certificate alt. subject * * This field is like altsubject_match, but used for phase 2 (inside * EAP-TTLS/PEAP/FAST tunnel) authentication. */ u8 *altsubject_match2; /** * eap_methods - Allowed EAP methods * * Zero (EAP_TYPE_NONE) terminated list of allowed EAP methods or %NULL * if all methods are accepted. */ u8 *eap_methods; /** * phase1 - Phase 1 (outer authentication) parameters * * String with field-value pairs, e.g., "peapver=0" or * "peapver=1 peaplabel=1". * * 'peapver' can be used to force which PEAP version (0 or 1) is used. * * 'peaplabel=1' can be used to force new label, "client PEAP * encryption", to be used during key derivation when PEAPv1 or newer. * * Most existing PEAPv1 implementation seem to be using the old label, * "client EAP encryption", and wpa_supplicant is now using that as the * default value. * * Some servers, e.g., Radiator, may require peaplabel=1 configuration * to interoperate with PEAPv1; see eap_testing.txt for more details. * * 'peap_outer_success=0' can be used to terminate PEAP authentication * on tunneled EAP-Success. This is required with some RADIUS servers * that implement draft-josefsson-pppext-eap-tls-eap-05.txt (e.g., * Lucent NavisRadius v4.4.0 with PEAP in "IETF Draft 5" mode). * * include_tls_length=1 can be used to force wpa_supplicant to include * TLS Message Length field in all TLS messages even if they are not * fragmented. * * sim_min_num_chal=3 can be used to configure EAP-SIM to require three * challenges (by default, it accepts 2 or 3). * * fast_provisioning=1 can be used to enable in-line provisioning of * EAP-FAST credentials (PAC) */ char *phase1; /** * phase2 - Phase2 (inner authentication with TLS tunnel) parameters * * String with field-value pairs, e.g., "auth=MSCHAPV2" for EAP-PEAP or * "autheap=MSCHAPV2 autheap=MD5" for EAP-TTLS. */ char *phase2; /** * pcsc - Parameters for PC/SC smartcard interface for USIM and GSM SIM * * This field is used to configure PC/SC smartcard interface. * Currently, the only configuration is whether this field is %NULL (do * not use PC/SC) or non-NULL (e.g., "") to enable PC/SC. * * This field is used for EAP-SIM and EAP-AKA. */ char *pcsc; /** * pin - PIN for USIM, GSM SIM, and smartcards * * This field is used to configure PIN for SIM and smartcards for * EAP-SIM and EAP-AKA. In addition, this is used with EAP-TLS if a * smartcard is used for private key operations. * * If left out, this will be asked through control interface. */ char *pin; /** * engine - Enable OpenSSL engine (e.g., for smartcard access) * * This is used if private key operations for EAP-TLS are performed * using a smartcard. */ int engine; /** * engine_id - Engine ID for OpenSSL engine * * "opensc" to select OpenSC engine or "pkcs11" to select PKCS#11 * engine. * * This is used if private key operations for EAP-TLS are performed * using a smartcard. */ char *engine_id; /** * key_id - Key ID for OpenSSL engine * * This is used if private key operations for EAP-TLS are performed * using a smartcard. */ char *key_id;#define EAPOL_FLAG_REQUIRE_KEY_UNICAST BIT(0)#define EAPOL_FLAG_REQUIRE_KEY_BROADCAST BIT(1) /** * eapol_flags - Bit field of IEEE 802.1X/EAPOL options (EAPOL_FLAG_*) */ int eapol_flags;#define NUM_WEP_KEYS 4#define MAX_WEP_KEY_LEN 16 /** * wep_key - WEP keys */ u8 wep_key[NUM_WEP_KEYS][MAX_WEP_KEY_LEN]; /** * wep_key_len - WEP key lengths */ size_t wep_key_len[NUM_WEP_KEYS]; /** * wep_tx_keyidx - Default key index for TX frames using WEP */ int wep_tx_keyidx; /** * proactive_key_caching - Enable proactive key caching * * This field can be used to enable proactive key caching which is also * known as opportunistic PMKSA caching for WPA2. This is disabled (0) * by default. Enable by setting this to 1. * * Proactive key caching is used to make supplicant assume that the APs * are using the same PMK and generate PMKSA cache entries without * doing RSN pre-authentication. This requires support from the AP side * and is normally used with wireless switches that co-locate the * authenticator. */ int proactive_key_caching; /** * otp - One-time-password * * This field should not be set in configuration step. It is only used * internally when OTP is entered through the control interface. */ u8 *otp; /** * otp_len - Length of the otp field */ size_t otp_len; /** * pending_req_identity - Whether there is a pending identity request * * This field should not be set in configuration step. It is only used * internally when control interface is used to request needed * information. */ int pending_req_identity; /** * pending_req_password - Whether there is a pending password request * * This field should not be set in configuration step. It is only used * internally when control interface is used to request needed * information. */ int pending_req_password; /** * pending_req_pin - Whether there is a pending PIN request * * This field should not be set in configuration step. It is only used * internally when control interface is used to request needed * information. */ int pending_req_pin; /** * pending_req_new_password - Pending password update request * * This field should not be set in configuration step. It is only used * internally when control interface is used to request needed * information. */ int pending_req_new_password; /** * pending_req_passphrase - Pending passphrase request * * This field should not be set in configuration step. It is only used * internally when control interface is used to request needed * information. */ int pending_req_passphrase; /** * pending_req_otp - Whether there is a pending OTP request * * This field should not be set in configuration step. It is only used * internally when control interface is used to request needed * information. */ char *pending_req_otp; /** * pending_req_otp_len - Length of the pending OTP request */ size_t pending_req_otp_len; /** * leap - Number of EAP methods using LEAP * * This field should be set to 1 if LEAP is enabled. This is used to * select IEEE 802.11 authentication algorithm. */ int leap; /** * non_leap - Number of EAP methods not using LEAP * * This field should be set to >0 if any EAP method other than LEAP is * enabled. This is used to select IEEE 802.11 authentication * algorithm. */ int non_leap; /** * eap_workaround - EAP workarounds enabled * * wpa_supplicant supports number of "EAP workarounds" to work around * interoperability issues with incorrectly behaving authentication * servers. This is recommended to be enabled by default because some * of the issues are present in large number of authentication servers. * * Strict EAP conformance mode can be configured by disabling * workarounds with eap_workaround = 0. */ unsigned int eap_workaround; /** * pac_file - File path or blob name for the PAC entries (EAP-FAST) * * wpa_supplicant will need to be able to create this file and write * updates to it when PAC is being provisioned or refreshed. Full path * to the file should be used since working directory may change when * wpa_supplicant is run in the background. * Alternatively, a named configuration blob can be used by setting * this to blob://<blob name>. */ char *pac_file; /** * mode - IEEE 802.11 operation mode (Infrastucture/IBSS) * * 0 = infrastructure (Managed) mode, i.e., associate with an AP. * * 1 = IBSS (ad-hoc, peer-to-peer) * * Note: IBSS can only be used with key_mgmt NONE (plaintext and * static WEP) and key_mgmt=WPA-NONE (fixed group key TKIP/CCMP). In * addition, ap_scan has to be set to 2 for IBSS. WPA-None requires * following network block options: proto=WPA, key_mgmt=WPA-NONE, * pairwise=NONE, group=TKIP (or CCMP, but not both), and psk must also * be set (either directly or using ASCII passphrase). */ int mode; /** * mschapv2_retry - MSCHAPv2 retry in progress * * This field is used internally by EAP-MSCHAPv2 and should not be set * as part of configuration. */ int mschapv2_retry; /** * new_password - New password for password update * * This field is used during MSCHAPv2 password update. This is normally * requested from the user through the control interface and not set * from configuration. */ u8 *new_password; /** * new_password_len - Length of new_password field */ size_t new_password_len; /** * disabled - Whether this network is currently disabled * * 0 = this network can be used (default). * 1 = this network block is disabled (can be enabled through * ctrl_iface, e.g., with wpa_cli or wpa_gui). */ int disabled;};int wpa_config_allowed_eap_method(struct wpa_ssid *ssid, int method);#endif /* CONFIG_SSID_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -