aboutsummaryrefslogtreecommitdiffstats
path: root/src/eapol_supp
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2015-09-10 18:34:15 (GMT)
committerJouni Malinen <j@w1.fi>2016-10-22 15:26:00 (GMT)
commitde57d873539a97d19e83ddfea8c157843cb5c7eb (patch)
tree3da16dfeb10d3bd518ffc6875512ba03adea541b /src/eapol_supp
parentc28767e11cab40dfe306915c0a28eb796a8377d1 (diff)
downloadhostap-de57d873539a97d19e83ddfea8c157843cb5c7eb.zip
hostap-de57d873539a97d19e83ddfea8c157843cb5c7eb.tar.gz
hostap-de57d873539a97d19e83ddfea8c157843cb5c7eb.tar.bz2
ERP: Make eap_peer_finish() callable
This is needed for FILS to process EAP-Finish/Re-auth. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Diffstat (limited to 'src/eapol_supp')
-rw-r--r--src/eapol_supp/eapol_supp_sm.c11
-rw-r--r--src/eapol_supp/eapol_supp_sm.h6
2 files changed, 17 insertions, 0 deletions
diff --git a/src/eapol_supp/eapol_supp_sm.c b/src/eapol_supp/eapol_supp_sm.c
index a08010d..7fdb277 100644
--- a/src/eapol_supp/eapol_supp_sm.c
+++ b/src/eapol_supp/eapol_supp_sm.c
@@ -2170,3 +2170,14 @@ struct wpabuf * eapol_sm_build_erp_reauth_start(struct eapol_sm *sm)
return NULL;
#endif /* CONFIG_ERP */
}
+
+
+void eapol_sm_process_erp_finish(struct eapol_sm *sm, const u8 *buf,
+ size_t len)
+{
+#ifdef CONFIG_ERP
+ if (!sm)
+ return;
+ eap_peer_finish(sm->eap, (const struct eap_hdr *) buf, len);
+#endif /* CONFIG_ERP */
+}
diff --git a/src/eapol_supp/eapol_supp_sm.h b/src/eapol_supp/eapol_supp_sm.h
index 7b80878..b48cab2 100644
--- a/src/eapol_supp/eapol_supp_sm.h
+++ b/src/eapol_supp/eapol_supp_sm.h
@@ -329,6 +329,8 @@ void eapol_sm_set_ext_pw_ctx(struct eapol_sm *sm,
int eapol_sm_failed(struct eapol_sm *sm);
void eapol_sm_erp_flush(struct eapol_sm *sm);
struct wpabuf * eapol_sm_build_erp_reauth_start(struct eapol_sm *sm);
+void eapol_sm_process_erp_finish(struct eapol_sm *sm, const u8 *buf,
+ size_t len);
int eapol_sm_get_eap_proxy_imsi(struct eapol_sm *sm, char *imsi, size_t *len);
#else /* IEEE8021X_EAPOL */
static inline struct eapol_sm *eapol_sm_init(struct eapol_ctx *ctx)
@@ -444,6 +446,10 @@ eapol_sm_build_erp_reauth_start(struct eapol_sm *sm)
{
return NULL;
}
+static inline void eapol_sm_process_erp_finish(struct eapol_sm *sm,
+ const u8 *buf, size_t len)
+{
+}
#endif /* IEEE8021X_EAPOL */
#endif /* EAPOL_SUPP_SM_H */