DPP2: Support mutual auth with QR in scan-during-auth-exchange case
Extend DPP authentication session search for the DPP_QR_CODE command to cover the ongoing exchanges in Controller/Responder. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
This commit is contained in:
parent
2e956c37d2
commit
fc3efe0834
3 changed files with 28 additions and 0 deletions
|
@ -668,6 +668,8 @@ int dpp_controller_start(struct dpp_global *dpp,
|
|||
void dpp_controller_stop(struct dpp_global *dpp);
|
||||
struct dpp_authentication * dpp_controller_get_auth(struct dpp_global *dpp,
|
||||
unsigned int id);
|
||||
void dpp_controller_new_qr_code(struct dpp_global *dpp,
|
||||
struct dpp_bootstrap_info *bi);
|
||||
int dpp_tcp_init(struct dpp_global *dpp, struct dpp_authentication *auth,
|
||||
const struct hostapd_ip_addr *addr, int port,
|
||||
const char *name);
|
||||
|
|
|
@ -1719,6 +1719,28 @@ struct dpp_authentication * dpp_controller_get_auth(struct dpp_global *dpp,
|
|||
}
|
||||
|
||||
|
||||
void dpp_controller_new_qr_code(struct dpp_global *dpp,
|
||||
struct dpp_bootstrap_info *bi)
|
||||
{
|
||||
struct dpp_controller *ctrl = dpp->controller;
|
||||
struct dpp_connection *conn;
|
||||
|
||||
if (!ctrl)
|
||||
return;
|
||||
|
||||
dl_list_for_each(conn, &ctrl->conn, struct dpp_connection, list) {
|
||||
struct dpp_authentication *auth = conn->auth;
|
||||
|
||||
if (!auth->response_pending ||
|
||||
dpp_notify_new_qr_code(auth, bi) != 1)
|
||||
continue;
|
||||
wpa_printf(MSG_DEBUG,
|
||||
"DPP: Sending out pending authentication response");
|
||||
dpp_tcp_send_msg(conn, conn->auth->resp_msg);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void dpp_tcp_init_flush(struct dpp_global *dpp)
|
||||
{
|
||||
struct dpp_connection *conn, *tmp;
|
||||
|
|
|
@ -90,6 +90,10 @@ int wpas_dpp_qr_code(struct wpa_supplicant *wpa_s, const char *cmd)
|
|||
500, wpas_dpp_tx_status, 0);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_DPP2
|
||||
dpp_controller_new_qr_code(wpa_s->dpp, bi);
|
||||
#endif /* CONFIG_DPP2 */
|
||||
|
||||
return bi->id;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue