diff --git a/stud.c b/stud.c index 1e83617..aad0fe4 100644 --- a/stud.c +++ b/stud.c @@ -1230,6 +1230,9 @@ static void ssl_read(struct ev_loop *loop, ev_io *w, int revents) { char * buf = ringbuffer_write_ptr(&ps->ring_ssl2clear); t = SSL_read(ps->ssl, buf, RING_DATA_LEN); + if (SSL_pending(ps->ssl)) + ev_feed_event(loop, w, EV_READ); + /* Fix CVE-2009-3555. Disable reneg if started by client. */ if (ps->renegotiation) { shutdown_proxy(ps, SHUTDOWN_SSL);