Hi, Why does bev_ssl require deferred callbacks?
Commit fc52dbac (see below) fixed an issue I was seeing where deferred error_cb(EOF)s were confusing clients which had disabled EV_READs (notably evhttp). If bev_ssl didn't require deferred cbs, the EOFs would have stayed queued at the OpenSSL layer (in the same way that EOFs normally stay queued in the kernel when bev_sock clients disable EV_READ). Thanks, Catalin diff --git a/bufferevent_openssl.c b/bufferevent_openssl.c index 86a8619..3843b31 100644 --- a/bufferevent_openssl.c +++ b/bufferevent_openssl.c <snip> - while ((bev_ssl->bev.bev.enabled & EV_READ) && + if ((bev_ssl->bev.bev.enabled & EV_READ) && <snip> r = do_read(bev_ssl, n_to_read); - if (r <= 0) - break; *********************************************************************** To unsubscribe, send an e-mail to majord...@freehaven.net with unsubscribe libevent-users in the body.