From 039ab15fdf4a3d1c0d72798c3d21f46d4d30fe5c Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Fri, 15 Sep 2017 17:45:06 +0300 Subject: [PATCH] DPP: Add DPP-CONFOBJ-PASS/PSK events for hostapd legacy configuration These control interface event messages can be used to allow hostapd AP to be configured for legacy WPA2-Personal configuration with DPP. Signed-off-by: Jouni Malinen --- src/ap/dpp_hostapd.c | 14 ++++++++++++++ src/common/wpa_ctrl.h | 2 ++ 2 files changed, 16 insertions(+) diff --git a/src/ap/dpp_hostapd.c b/src/ap/dpp_hostapd.c index 27caa6407..8b6a630c4 100644 --- a/src/ap/dpp_hostapd.c +++ b/src/ap/dpp_hostapd.c @@ -689,6 +689,20 @@ static void hostapd_dpp_gas_resp_cb(void *ctx, const u8 *addr, u8 dialog_token, * message. */ wpa_msg(hapd->msg_ctx, MSG_INFO, DPP_EVENT_CONNECTOR "%s", auth->connector); + } else if (auth->passphrase[0]) { + char hex[64 * 2 + 1]; + + wpa_snprintf_hex(hex, sizeof(hex), + (const u8 *) auth->passphrase, + os_strlen(auth->passphrase)); + wpa_msg(hapd->msg_ctx, MSG_INFO, DPP_EVENT_CONFOBJ_PASS "%s", + hex); + } else if (auth->psk_set) { + char hex[PMK_LEN * 2 + 1]; + + wpa_snprintf_hex(hex, sizeof(hex), auth->psk, PMK_LEN); + wpa_msg(hapd->msg_ctx, MSG_INFO, DPP_EVENT_CONFOBJ_PSK "%s", + hex); } if (auth->c_sign_key) { char *hex; diff --git a/src/common/wpa_ctrl.h b/src/common/wpa_ctrl.h index f7b063a5c..c59bc608f 100644 --- a/src/common/wpa_ctrl.h +++ b/src/common/wpa_ctrl.h @@ -152,6 +152,8 @@ extern "C" { #define DPP_EVENT_CONF_SENT "DPP-CONF-SENT " #define DPP_EVENT_CONF_FAILED "DPP-CONF-FAILED " #define DPP_EVENT_CONFOBJ_SSID "DPP-CONFOBJ-SSID " +#define DPP_EVENT_CONFOBJ_PASS "DPP-CONFOBJ-PASS " +#define DPP_EVENT_CONFOBJ_PSK "DPP-CONFOBJ-PSK " #define DPP_EVENT_CONNECTOR "DPP-CONNECTOR " #define DPP_EVENT_C_SIGN_KEY "DPP-C-SIGN-KEY " #define DPP_EVENT_NET_ACCESS_KEY "DPP-NET-ACCESS-KEY "