diff --git a/src/elogd.c b/src/elogd.c index 070ee866..d37b25b4 100755 --- a/src/elogd.c +++ b/src/elogd.c @@ -28887,9 +28887,10 @@ void server_loop(void) if (SSL_accept(_ssl_con) < 0) { if (is_verbose()) eprintf("SSL_accept failed\n"); - closesocket(_sock); + SSL_shutdown(ka_ssl_con[i_conn]); + SSL_free(ka_ssl_con[i_conn]); ka_sock[i_conn] = 0; - ka_ssl_con[i_conn] = _ssl_con; + ka_ssl_con[i_conn] = NULL; continue; } }