*/
if (wsi->vhost->use_ssl &&
- wsi->context->simultaneous_ssl == wsi->context->simultaneous_ssl_restriction) {
+ wsi->context->simultaneous_ssl_restriction &&
+ wsi->context->simultaneous_ssl ==
+ wsi->context->simultaneous_ssl_restriction) {
lwsl_info("%s: simultaneous_ssl_restriction and nothing pipelined\n", __func__);
return 1;
}
*/
if (wsi->vhost->use_ssl &&
- context->simultaneous_ssl == context->simultaneous_ssl_restriction)
+ context->simultaneous_ssl_restriction &&
+ context->simultaneous_ssl ==
+ context->simultaneous_ssl_restriction)
/* no... ignore it, he won't come again until we are
* below the simultaneous_ssl_restriction limit and
* POLLIN is enabled on him again
SSL_free(wsi->ssl);
wsi->ssl = NULL;
- if (wsi->context->simultaneous_ssl-- == wsi->context->simultaneous_ssl_restriction)
+ if (wsi->context->simultaneous_ssl_restriction &&
+ wsi->context->simultaneous_ssl-- ==
+ wsi->context->simultaneous_ssl_restriction)
/* we made space and can do an accept */
lws_gate_accepts(wsi->context, 1);
lwsl_err("%s: leaking ssl\n", __func__);
if (accept_fd == LWS_SOCK_INVALID)
assert(0);
- if (context->simultaneous_ssl >= context->simultaneous_ssl_restriction) {
+ if (context->simultaneous_ssl_restriction &&
+ context->simultaneous_ssl >= context->simultaneous_ssl_restriction) {
lwsl_notice("unable to deal with SSL connection\n");
return 1;
}
compatible_close(accept_fd);
goto fail;
}
- if (++context->simultaneous_ssl == context->simultaneous_ssl_restriction)
+ if (context->simultaneous_ssl_restriction &&
+ ++context->simultaneous_ssl == context->simultaneous_ssl_restriction)
/* that was the last allowed SSL connection */
lws_gate_accepts(context, 0);