diff options
| author | mrezai | 2016-05-03 23:59:14 +0430 |
|---|---|---|
| committer | mrezai | 2016-05-03 23:59:14 +0430 |
| commit | ab623c923d4e2c950342aec5da371cb92b1fbbc6 (patch) | |
| tree | 14edc317fa408ca610bd85e6a82468dd347865db /drivers/builtin_openssl2/ssl/ssl_lib.c | |
| parent | e0d27c55237d4f61910b1e72b744fc043e9b6bff (diff) | |
| download | godot-ab623c923d4e2c950342aec5da371cb92b1fbbc6.tar.gz godot-ab623c923d4e2c950342aec5da371cb92b1fbbc6.tar.zst godot-ab623c923d4e2c950342aec5da371cb92b1fbbc6.zip | |
Diffstat (limited to 'drivers/builtin_openssl2/ssl/ssl_lib.c')
| -rw-r--r-- | drivers/builtin_openssl2/ssl/ssl_lib.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/builtin_openssl2/ssl/ssl_lib.c b/drivers/builtin_openssl2/ssl/ssl_lib.c index f1279bbf9..fd94325bb 100644 --- a/drivers/builtin_openssl2/ssl/ssl_lib.c +++ b/drivers/builtin_openssl2/ssl/ssl_lib.c @@ -244,7 +244,16 @@ int SSL_clear(SSL *s) ssl_clear_hash_ctx(&s->write_hash); s->first_packet = 0; - +#ifndef OPENSSL_NO_TLSEXT + if (s->cert != NULL) { + if (s->cert->alpn_proposed) { + OPENSSL_free(s->cert->alpn_proposed); + s->cert->alpn_proposed = NULL; + } + s->cert->alpn_proposed_len = 0; + s->cert->alpn_sent = 0; + } +#endif #if 1 /* * Check to see if we were changed into a different method, if so, revert @@ -3174,6 +3183,12 @@ SSL_CTX *SSL_set_SSL_CTX(SSL *ssl, SSL_CTX *ctx) ssl->cert->ciphers_rawlen = ocert->ciphers_rawlen; ocert->ciphers_raw = NULL; } +#ifndef OPENSSL_NO_TLSEXT + ssl->cert->alpn_proposed = ocert->alpn_proposed; + ssl->cert->alpn_proposed_len = ocert->alpn_proposed_len; + ocert->alpn_proposed = NULL; + ssl->cert->alpn_sent = ocert->alpn_sent; +#endif ssl_cert_free(ocert); } |
