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).
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) {