OpenSSL: Fix EAP-FAST peer regression
Commit 35efa2479f
('OpenSSL: Allow TLS
v1.1 and v1.2 to be negotiated by default') changed from using
TLSv1_method() to SSLv23_method() to allow negotiation of TLS v1.0,
v1.1, and v1.2.
Unfortunately, it looks like EAP-FAST does not work with this due to
OpenSSL not allowing ClientHello extensions to be configured with
SSL_set_session_ticket_ext() when SSLv23_method() is used. Work around
this regression by initiating a separate SSL_CTX instance for EAP-FAST
phase 1 needs with TLSv1_method() while leaving all other EAP cases
using TLS to work with the new default that allows v1.1 and v1.2 to be
negotiated. This is not ideal and will hopefully get fixed in the future
with a new OpenSSL method, but until that time, this can be used allow
other methods use newer TLS versions while still allowing EAP-FAST to be
used even if it remains to be constraint to TLS v1.0 only.
Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
471debb0b3
commit
d4913c585e
3 changed files with 93 additions and 26 deletions
|
@ -147,6 +147,8 @@ static int eap_tls_params_from_conf(struct eap_sm *sm,
|
|||
} else {
|
||||
wpa_printf(MSG_DEBUG, "TLS: using phase1 config options");
|
||||
eap_tls_params_from_conf1(params, config);
|
||||
if (data->eap_type == EAP_TYPE_FAST)
|
||||
params->flags |= TLS_CONN_EAP_FAST;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue