Import OpenSSL 1.1.1i
This commit is contained in:
@@ -1200,6 +1200,8 @@ void SSL_free(SSL *s)
|
||||
OPENSSL_free(s->ext.ocsp.resp);
|
||||
OPENSSL_free(s->ext.alpn);
|
||||
OPENSSL_free(s->ext.tls13_cookie);
|
||||
if (s->clienthello != NULL)
|
||||
OPENSSL_free(s->clienthello->pre_proc_exts);
|
||||
OPENSSL_free(s->clienthello);
|
||||
OPENSSL_free(s->pha_context);
|
||||
EVP_MD_CTX_free(s->pha_dgst);
|
||||
@@ -2676,7 +2678,7 @@ const char *SSL_get_servername(const SSL *s, const int type)
|
||||
* - Otherwise it returns NULL
|
||||
*
|
||||
* During/after the handshake (TLSv1.2 or below resumption occurred):
|
||||
* - If the session from the orignal handshake had a servername accepted
|
||||
* - If the session from the original handshake had a servername accepted
|
||||
* by the server then it will return that servername.
|
||||
* - Otherwise it returns the servername set via
|
||||
* SSL_set_tlsext_host_name() (or NULL if it was not called).
|
||||
@@ -2895,7 +2897,8 @@ int SSL_export_keying_material(SSL *s, unsigned char *out, size_t olen,
|
||||
const unsigned char *context, size_t contextlen,
|
||||
int use_context)
|
||||
{
|
||||
if (s->version < TLS1_VERSION && s->version != DTLS1_BAD_VER)
|
||||
if (s->session == NULL
|
||||
|| (s->version < TLS1_VERSION && s->version != DTLS1_BAD_VER))
|
||||
return -1;
|
||||
|
||||
return s->method->ssl3_enc->export_keying_material(s, out, olen, label,
|
||||
@@ -3824,6 +3827,8 @@ SSL *SSL_dup(SSL *s)
|
||||
goto err;
|
||||
ret->version = s->version;
|
||||
ret->options = s->options;
|
||||
ret->min_proto_version = s->min_proto_version;
|
||||
ret->max_proto_version = s->max_proto_version;
|
||||
ret->mode = s->mode;
|
||||
SSL_set_max_cert_list(ret, SSL_get_max_cert_list(s));
|
||||
SSL_set_read_ahead(ret, SSL_get_read_ahead(s));
|
||||
@@ -3839,21 +3844,6 @@ SSL *SSL_dup(SSL *s)
|
||||
if (!CRYPTO_dup_ex_data(CRYPTO_EX_INDEX_SSL, &ret->ex_data, &s->ex_data))
|
||||
goto err;
|
||||
|
||||
/* setup rbio, and wbio */
|
||||
if (s->rbio != NULL) {
|
||||
if (!BIO_dup_state(s->rbio, (char *)&ret->rbio))
|
||||
goto err;
|
||||
}
|
||||
if (s->wbio != NULL) {
|
||||
if (s->wbio != s->rbio) {
|
||||
if (!BIO_dup_state(s->wbio, (char *)&ret->wbio))
|
||||
goto err;
|
||||
} else {
|
||||
BIO_up_ref(ret->rbio);
|
||||
ret->wbio = ret->rbio;
|
||||
}
|
||||
}
|
||||
|
||||
ret->server = s->server;
|
||||
if (s->handshake_func) {
|
||||
if (s->server)
|
||||
|
||||
Reference in New Issue
Block a user