diff --git a/include/haproxy/stconn.h b/include/haproxy/stconn.h index 4b8ffd675..9a223a8d5 100644 --- a/include/haproxy/stconn.h +++ b/include/haproxy/stconn.h @@ -58,6 +58,7 @@ int sc_reset_endp(struct stconn *sc); struct appctx *sc_applet_create(struct stconn *sc, struct applet *app); int sc_applet_process(struct stconn *sc); +int sc_conn_process(struct stconn *sc); void sc_conn_prepare_endp_upgrade(struct stconn *sc); void sc_conn_abort_endp_upgrade(struct stconn *sc); diff --git a/src/connection.c b/src/connection.c index 445991421..9986885d4 100644 --- a/src/connection.c +++ b/src/connection.c @@ -141,7 +141,7 @@ int conn_create_mux(struct connection *conn, int *closed_connection) fail: /* let the upper layer know the connection failed */ if (sc) { - sc->app_ops->wake(sc); + sc_conn_process(sc); } else if (conn_reverse_in_preconnect(conn)) { struct listener *l = conn_active_reverse_listener(conn); diff --git a/src/stconn.c b/src/stconn.c index c036a4612..0a92b569d 100644 --- a/src/stconn.c +++ b/src/stconn.c @@ -47,7 +47,6 @@ static void sc_app_shut_applet(struct stconn *sc); static void sc_app_chk_rcv_applet(struct stconn *sc); static void sc_app_chk_snd_applet(struct stconn *sc); -static int sc_conn_process(struct stconn *sc); static int sc_conn_recv(struct stconn *sc); static int sc_conn_send(struct stconn *sc);