mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-01-03 02:32:03 +00:00
BUG/MEDIUM: backend: always call si_detach_endpoint() on async connection failure
In case an asynchronous connection (ALPN) succeeds but the mux fails to attach, we must release the stream interface's endpoint, otherwise we leave the stream interface with an endpoint pointing to a freed connection with si_ops == si_conn_ops, and sess_update_st_cer() calls si_shutw() on it, causing it to crash. This must be backported to 1.9 only.
This commit is contained in:
parent
9ef5155ba6
commit
d822013f45
@ -1108,6 +1108,8 @@ static int conn_complete_server(struct connection *conn)
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
si_detach_endpoint(&s->si[1]);
|
||||
|
||||
if (cs)
|
||||
cs_free(cs);
|
||||
/* kill the connection now */
|
||||
|
Loading…
Reference in New Issue
Block a user