mirror of
https://github.com/vanhoefm/fragattacks.git
synced 2024-11-25 00:38:24 -05:00
Fix CONFIG_WPS_NFC=y build without CONFIG_P2P=y
Some of the control interface operations for P2P were not properly protected with #ifdef CONFIG_P2P. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
7ac7fd43aa
commit
88853aedf6
@ -951,6 +951,7 @@ static int wpas_ctrl_nfc_get_handover_req_wps(struct wpa_supplicant *wpa_s,
|
||||
}
|
||||
|
||||
|
||||
#ifdef CONFIG_P2P
|
||||
static int wpas_ctrl_nfc_get_handover_req_p2p(struct wpa_supplicant *wpa_s,
|
||||
char *reply, size_t max_len,
|
||||
int ndef)
|
||||
@ -973,6 +974,7 @@ static int wpas_ctrl_nfc_get_handover_req_p2p(struct wpa_supplicant *wpa_s,
|
||||
|
||||
return res;
|
||||
}
|
||||
#endif /* CONFIG_P2P */
|
||||
|
||||
|
||||
static int wpas_ctrl_nfc_get_handover_req(struct wpa_supplicant *wpa_s,
|
||||
@ -1001,10 +1003,12 @@ static int wpas_ctrl_nfc_get_handover_req(struct wpa_supplicant *wpa_s,
|
||||
wpa_s, reply, max_len, ndef);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_P2P
|
||||
if (os_strcmp(pos, "P2P-CR") == 0) {
|
||||
return wpas_ctrl_nfc_get_handover_req_p2p(
|
||||
wpa_s, reply, max_len, ndef);
|
||||
}
|
||||
#endif /* CONFIG_P2P */
|
||||
|
||||
return -1;
|
||||
}
|
||||
@ -1032,6 +1036,7 @@ static int wpas_ctrl_nfc_get_handover_sel_wps(struct wpa_supplicant *wpa_s,
|
||||
}
|
||||
|
||||
|
||||
#ifdef CONFIG_P2P
|
||||
static int wpas_ctrl_nfc_get_handover_sel_p2p(struct wpa_supplicant *wpa_s,
|
||||
char *reply, size_t max_len,
|
||||
int ndef, int tag)
|
||||
@ -1052,6 +1057,7 @@ static int wpas_ctrl_nfc_get_handover_sel_p2p(struct wpa_supplicant *wpa_s,
|
||||
|
||||
return res;
|
||||
}
|
||||
#endif /* CONFIG_P2P */
|
||||
|
||||
|
||||
static int wpas_ctrl_nfc_get_handover_sel(struct wpa_supplicant *wpa_s,
|
||||
@ -1084,6 +1090,7 @@ static int wpas_ctrl_nfc_get_handover_sel(struct wpa_supplicant *wpa_s,
|
||||
os_strcmp(pos, "WPS-CR") == 0, pos2);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_P2P
|
||||
if (os_strcmp(pos, "P2P-CR") == 0) {
|
||||
return wpas_ctrl_nfc_get_handover_sel_p2p(
|
||||
wpa_s, reply, max_len, ndef, 0);
|
||||
@ -1093,6 +1100,7 @@ static int wpas_ctrl_nfc_get_handover_sel(struct wpa_supplicant *wpa_s,
|
||||
return wpas_ctrl_nfc_get_handover_sel_p2p(
|
||||
wpa_s, reply, max_len, ndef, 1);
|
||||
}
|
||||
#endif /* CONFIG_P2P */
|
||||
|
||||
return -1;
|
||||
}
|
||||
@ -1160,6 +1168,7 @@ static int wpas_ctrl_nfc_report_handover(struct wpa_supplicant *wpa_s,
|
||||
struct wpabuf *req, *sel;
|
||||
int ret;
|
||||
char *pos, *role, *type, *pos2;
|
||||
#ifdef CONFIG_P2P
|
||||
char *freq;
|
||||
int forced_freq = 0;
|
||||
|
||||
@ -1169,6 +1178,7 @@ static int wpas_ctrl_nfc_report_handover(struct wpa_supplicant *wpa_s,
|
||||
freq += 6;
|
||||
forced_freq = atoi(freq);
|
||||
}
|
||||
#endif /* CONFIG_P2P */
|
||||
|
||||
role = cmd;
|
||||
pos = os_strchr(role, ' ');
|
||||
@ -1237,11 +1247,14 @@ static int wpas_ctrl_nfc_report_handover(struct wpa_supplicant *wpa_s,
|
||||
|
||||
if (os_strcmp(role, "INIT") == 0 && os_strcmp(type, "WPS") == 0) {
|
||||
ret = wpas_wps_nfc_report_handover(wpa_s, req, sel);
|
||||
#ifdef CONFIG_AP
|
||||
} else if (os_strcmp(role, "RESP") == 0 && os_strcmp(type, "WPS") == 0)
|
||||
{
|
||||
ret = wpas_ap_wps_nfc_report_handover(wpa_s, req, sel);
|
||||
if (ret < 0)
|
||||
ret = wpas_er_wps_nfc_report_handover(wpa_s, req, sel);
|
||||
#endif /* CONFIG_AP */
|
||||
#ifdef CONFIG_P2P
|
||||
} else if (os_strcmp(role, "INIT") == 0 && os_strcmp(type, "P2P") == 0)
|
||||
{
|
||||
ret = wpas_p2p_nfc_report_handover(wpa_s, 1, req, sel, 0);
|
||||
@ -1249,6 +1262,7 @@ static int wpas_ctrl_nfc_report_handover(struct wpa_supplicant *wpa_s,
|
||||
{
|
||||
ret = wpas_p2p_nfc_report_handover(wpa_s, 0, req, sel,
|
||||
forced_freq);
|
||||
#endif /* CONFIG_P2P */
|
||||
} else {
|
||||
wpa_printf(MSG_DEBUG, "NFC: Unsupported connection handover "
|
||||
"reported: role=%s type=%s", role, type);
|
||||
|
Loading…
Reference in New Issue
Block a user