From: Emeric Brun Date: Fri, 2 Jun 2017 15:54:06 +0000 (+0000) Subject: BUG/MINOR: ssl: do not call directly the conn_fd_handler from async_fd_handler X-Git-Tag: v1.8-dev3~304 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bbc165447e5b800df668a1010419ef8e2c48c124;p=thirdparty%2Fhaproxy.git BUG/MINOR: ssl: do not call directly the conn_fd_handler from async_fd_handler This patch modifies the way to re-enable the connection from the async fd handler calling conn_update_sock_polling instead of the conn_fd_handler. It also ensures that the polling is really stopped on the async fd. --- diff --git a/src/ssl_sock.c b/src/ssl_sock.c index f9b236a8f7..af09cfba2f 100644 --- a/src/ssl_sock.c +++ b/src/ssl_sock.c @@ -369,17 +369,19 @@ fail_get: static void ssl_async_fd_handler(int fd) { struct connection *conn = fdtab[fd].owner; - int conn_fd = conn->t.sock.fd; /* fd is an async enfine fd, we must stop * to poll this fd until it is requested */ + fd_stop_recv(fd); fd_cant_recv(fd); /* crypto engine is available, let's notify the associated * connection that it can pursue its processing. */ - conn_fd_handler(conn_fd); + __conn_sock_want_recv(conn); + __conn_sock_want_send(conn); + conn_update_sock_polling(conn); } /*