WPS NFC: Add support for wpa_supplicant AP/GO mode to use handover
New functionality is needed for this with the update NFC connection handover design that depends on the AP side using the public key hash from the handover request. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
fa4c2988ae
commit
d95079361b
3 changed files with 20 additions and 0 deletions
|
@ -946,6 +946,19 @@ struct wpabuf * wpas_ap_wps_nfc_handover_sel(struct wpa_supplicant *wpa_s,
|
||||||
return hostapd_wps_nfc_hs_cr(hapd, ndef);
|
return hostapd_wps_nfc_hs_cr(hapd, ndef);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int wpas_ap_wps_nfc_report_handover(struct wpa_supplicant *wpa_s,
|
||||||
|
const struct wpabuf *req,
|
||||||
|
const struct wpabuf *sel)
|
||||||
|
{
|
||||||
|
struct hostapd_data *hapd;
|
||||||
|
|
||||||
|
if (wpa_s->ap_iface == NULL)
|
||||||
|
return -1;
|
||||||
|
hapd = wpa_s->ap_iface->bss[0];
|
||||||
|
return hostapd_wps_nfc_report_handover(hapd, req, sel);
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* CONFIG_WPS_NFC */
|
#endif /* CONFIG_WPS_NFC */
|
||||||
|
|
||||||
#endif /* CONFIG_WPS */
|
#endif /* CONFIG_WPS */
|
||||||
|
|
|
@ -69,4 +69,8 @@ wpas_ap_wps_nfc_handover_sel(struct wpa_supplicant *wpa_s,
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_AP */
|
#endif /* CONFIG_AP */
|
||||||
|
|
||||||
|
int wpas_ap_wps_nfc_report_handover(struct wpa_supplicant *wpa_s,
|
||||||
|
const struct wpabuf *req,
|
||||||
|
const struct wpabuf *sel);
|
||||||
|
|
||||||
#endif /* AP_H */
|
#endif /* AP_H */
|
||||||
|
|
|
@ -1125,6 +1125,9 @@ static int wpas_ctrl_nfc_report_handover(struct wpa_supplicant *wpa_s,
|
||||||
|
|
||||||
if (os_strcmp(role, "INIT") == 0 && os_strcmp(type, "WPS") == 0) {
|
if (os_strcmp(role, "INIT") == 0 && os_strcmp(type, "WPS") == 0) {
|
||||||
ret = wpas_wps_nfc_report_handover(wpa_s, req, sel);
|
ret = wpas_wps_nfc_report_handover(wpa_s, req, sel);
|
||||||
|
} else if (os_strcmp(role, "RESP") == 0 && os_strcmp(type, "WPS") == 0)
|
||||||
|
{
|
||||||
|
ret = wpas_ap_wps_nfc_report_handover(wpa_s, req, sel);
|
||||||
} else {
|
} else {
|
||||||
wpa_printf(MSG_DEBUG, "NFC: Unsupported connection handover "
|
wpa_printf(MSG_DEBUG, "NFC: Unsupported connection handover "
|
||||||
"reported: role=%s type=%s", role, type);
|
"reported: role=%s type=%s", role, type);
|
||||||
|
|
Loading…
Reference in a new issue