mirror of
https://github.com/nginx/nginx.git
synced 2026-07-29 15:54:27 -05:00
Stream: fixed handling of non-ssl sessions.
A missing check could cause ngx_stream_ssl_handler() to be applied to a non-ssl session, which resulted in a null pointer dereference if ssl_verify_client is enabled. The bug had appeared in 1.11.8 (41cb1b64561d).
This commit is contained in:
@@ -287,11 +287,15 @@ ngx_stream_ssl_handler(ngx_stream_session_t *s)
|
||||
ngx_connection_t *c;
|
||||
ngx_stream_ssl_conf_t *sslcf;
|
||||
|
||||
if (!s->ssl) {
|
||||
return NGX_OK;
|
||||
}
|
||||
|
||||
c = s->connection;
|
||||
|
||||
sslcf = ngx_stream_get_module_srv_conf(s, ngx_stream_ssl_module);
|
||||
|
||||
if (s->ssl && c->ssl == NULL) {
|
||||
if (c->ssl == NULL) {
|
||||
c->log->action = "SSL handshaking";
|
||||
|
||||
if (sslcf->ssl.ctx == NULL) {
|
||||
|
||||
Reference in New Issue
Block a user