esp_wifi: Add support for EAP-FAST authentication method

This commit is contained in:
Hrudaynath Dhabe
2021-08-30 15:42:32 +05:30
parent a18cb70905
commit 5f96a6ffd2
28 changed files with 3943 additions and 136 deletions

View File

@@ -263,8 +263,9 @@ struct eap_method {
#define CLIENT_CERT_NAME "CLC"
#define CA_CERT_NAME "CAC"
#define PRIVATE_KEY_NAME "PVK"
#define PAC_FILE_NAME "PAC"
#define BLOB_NAME_LEN 3
#define BLOB_NUM 3
#define BLOB_NUM 4
enum SIG_WPA2 {
SIG_WPA2_START = 0,
@@ -279,9 +280,12 @@ enum SIG_WPA2 {
struct eap_sm {
/* not defined in RFC 4137 */
Boolean changed;
void *eapol_ctx;
const struct eapol_callbacks *eapol_cb;
void *eap_method_priv;
int init_phase2;
void *msg_ctx;
void *ssl_ctx;
unsigned int workaround;
@@ -296,6 +300,12 @@ struct eap_sm {
#endif
u8 finish_state;
/* Optional challenges generated in Phase 1 (EAP-FAST) */
u8 *peer_challenge, *auth_challenge;
unsigned int expected_failure:1;
unsigned int ext_cert_check:1;
unsigned int waiting_ext_cert_check:1;
bool peap_done;
u8 *eapKeyData;
@@ -319,6 +329,7 @@ const char * eap_get_config_phase1(struct eap_sm *sm);
const char * eap_get_config_phase2(struct eap_sm *sm);
int eap_get_config_fragment_size(struct eap_sm *sm);
struct eap_peer_config * eap_get_config(struct eap_sm *sm);
void eap_set_config_blob(struct eap_sm *sm, struct wpa_config_blob *blob);
const struct wpa_config_blob * eap_get_config_blob(struct eap_sm *sm, const char *name);
bool wifi_sta_get_enterprise_disable_time_check(void);