Make last received ANonce available through control interface
This makes it easier to debug 4-way handshake implementation issues without having to use a sniffer. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
143b81bad5
commit
bb06748f45
3 changed files with 15 additions and 0 deletions
|
@ -3281,11 +3281,19 @@ void wpa_sm_set_ptk_kck_kek(struct wpa_sm *sm,
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_TESTING_OPTIONS
|
#ifdef CONFIG_TESTING_OPTIONS
|
||||||
|
|
||||||
void wpa_sm_set_test_assoc_ie(struct wpa_sm *sm, struct wpabuf *buf)
|
void wpa_sm_set_test_assoc_ie(struct wpa_sm *sm, struct wpabuf *buf)
|
||||||
{
|
{
|
||||||
wpabuf_free(sm->test_assoc_ie);
|
wpabuf_free(sm->test_assoc_ie);
|
||||||
sm->test_assoc_ie = buf;
|
sm->test_assoc_ie = buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const u8 * wpa_sm_get_anonce(struct wpa_sm *sm)
|
||||||
|
{
|
||||||
|
return sm->anonce;
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* CONFIG_TESTING_OPTIONS */
|
#endif /* CONFIG_TESTING_OPTIONS */
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -428,6 +428,7 @@ extern unsigned int tdls_testing;
|
||||||
|
|
||||||
int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf);
|
int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf);
|
||||||
void wpa_sm_set_test_assoc_ie(struct wpa_sm *sm, struct wpabuf *buf);
|
void wpa_sm_set_test_assoc_ie(struct wpa_sm *sm, struct wpabuf *buf);
|
||||||
|
const u8 * wpa_sm_get_anonce(struct wpa_sm *sm);
|
||||||
|
|
||||||
struct wpabuf * fils_build_auth(struct wpa_sm *sm, int dh_group, const u8 *md);
|
struct wpabuf * fils_build_auth(struct wpa_sm *sm, int dh_group, const u8 *md);
|
||||||
int fils_process_auth(struct wpa_sm *sm, const u8 *bssid, const u8 *data,
|
int fils_process_auth(struct wpa_sm *sm, const u8 *bssid, const u8 *data,
|
||||||
|
|
|
@ -749,6 +749,12 @@ static int wpa_supplicant_ctrl_iface_get(struct wpa_supplicant *wpa_s,
|
||||||
#endif /* CONFIG_TESTING_GET_GTK */
|
#endif /* CONFIG_TESTING_GET_GTK */
|
||||||
} else if (os_strcmp(cmd, "tls_library") == 0) {
|
} else if (os_strcmp(cmd, "tls_library") == 0) {
|
||||||
res = tls_get_library_version(buf, buflen);
|
res = tls_get_library_version(buf, buflen);
|
||||||
|
#ifdef CONFIG_TESTING_OPTIONS
|
||||||
|
} else if (os_strcmp(cmd, "anonce") == 0) {
|
||||||
|
return wpa_snprintf_hex(buf, buflen,
|
||||||
|
wpa_sm_get_anonce(wpa_s->wpa),
|
||||||
|
WPA_NONCE_LEN);
|
||||||
|
#endif /* CONFIG_TESTING_OPTIONS */
|
||||||
} else {
|
} else {
|
||||||
res = wpa_config_get_value(cmd, wpa_s->conf, buf, buflen);
|
res = wpa_config_get_value(cmd, wpa_s->conf, buf, buflen);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue