mirror of
https://github.com/nginx/nginx.git
synced 2025-06-13 06:12:44 +08:00
SSL: abort handshake on SSL_set_SSL_CTX() errors.
In rare cases, such as memory allocation failure, SSL_set_SSL_CTX() returns NULL, which could mean that a different SSL configuration has not been set. Note that this new behaviour seemingly originated in OpenSSL-1.1.0 release.
This commit is contained in:
parent
6c89d752c8
commit
3bbeb1b8de
@ -932,7 +932,10 @@ ngx_http_ssl_servername(ngx_ssl_conn_t *ssl_conn, int *ad, void *arg)
|
|||||||
c->ssl->buffer_size = sscf->buffer_size;
|
c->ssl->buffer_size = sscf->buffer_size;
|
||||||
|
|
||||||
if (sscf->ssl.ctx) {
|
if (sscf->ssl.ctx) {
|
||||||
SSL_set_SSL_CTX(ssl_conn, sscf->ssl.ctx);
|
if (SSL_set_SSL_CTX(ssl_conn, sscf->ssl.ctx) == NULL) {
|
||||||
|
*ad = SSL_AD_INTERNAL_ERROR;
|
||||||
|
return SSL_TLSEXT_ERR_ALERT_FATAL;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* SSL_set_SSL_CTX() only changes certs as of 1.0.0d
|
* SSL_set_SSL_CTX() only changes certs as of 1.0.0d
|
||||||
|
Loading…
Reference in New Issue
Block a user