Interworking: Allow EAP-FAST to be used
This behaves like PEAP as far as Interworking network selection is concerned. Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
0aca5d1361
commit
1f5d2dd3d7
1 changed files with 10 additions and 2 deletions
|
@ -520,12 +520,13 @@ static int nai_realm_cred_username(struct nai_realm_eap *eap)
|
||||||
if (eap_get_name(EAP_VENDOR_IETF, eap->method) == NULL)
|
if (eap_get_name(EAP_VENDOR_IETF, eap->method) == NULL)
|
||||||
return 0; /* method not supported */
|
return 0; /* method not supported */
|
||||||
|
|
||||||
if (eap->method != EAP_TYPE_TTLS && eap->method != EAP_TYPE_PEAP) {
|
if (eap->method != EAP_TYPE_TTLS && eap->method != EAP_TYPE_PEAP &&
|
||||||
|
eap->method != EAP_TYPE_FAST) {
|
||||||
/* Only tunneled methods with username/password supported */
|
/* Only tunneled methods with username/password supported */
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (eap->method == EAP_TYPE_PEAP) {
|
if (eap->method == EAP_TYPE_PEAP || eap->method == EAP_TYPE_FAST) {
|
||||||
if (eap->inner_method &&
|
if (eap->inner_method &&
|
||||||
eap_get_name(EAP_VENDOR_IETF, eap->inner_method) == NULL)
|
eap_get_name(EAP_VENDOR_IETF, eap->inner_method) == NULL)
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1416,6 +1417,13 @@ int interworking_connect(struct wpa_supplicant *wpa_s, struct wpa_bss *bss)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case EAP_TYPE_PEAP:
|
case EAP_TYPE_PEAP:
|
||||||
|
case EAP_TYPE_FAST:
|
||||||
|
if (wpa_config_set(ssid, "phase1", "\"fast_provisioning=2\"",
|
||||||
|
0) < 0)
|
||||||
|
goto fail;
|
||||||
|
if (wpa_config_set(ssid, "pac_file",
|
||||||
|
"\"blob://pac_interworking\"", 0) < 0)
|
||||||
|
goto fail;
|
||||||
os_snprintf(buf, sizeof(buf), "\"auth=%s\"",
|
os_snprintf(buf, sizeof(buf), "\"auth=%s\"",
|
||||||
eap_get_name(EAP_VENDOR_IETF,
|
eap_get_name(EAP_VENDOR_IETF,
|
||||||
eap->inner_method ?
|
eap->inner_method ?
|
||||||
|
|
Loading…
Reference in a new issue