mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-02-13 17:07:31 +00:00
BUG/MAJOR: stream: in stream_free(), close the front endpoint and not the origin
stream_free() used to close the front connection by using s->sess->origin, instead of using s->si[0].end. This is very visible in HTTP/2 where the front connection is abusively closed and causes all sort of issues including crashes caused by double closes due to the same origin being referenced many times. It's also suspected that it may have caused some of the early issues met during the Lua development. It's uncertain whether stable branches are affected. It might be worth backporting it once it has been confirmed not to create new impacts.
This commit is contained in:
parent
50bc31d4d6
commit
7632548d97
@ -262,7 +262,7 @@ static void stream_free(struct stream *s)
|
||||
struct session *sess = strm_sess(s);
|
||||
struct proxy *fe = sess->fe;
|
||||
struct bref *bref, *back;
|
||||
struct connection *cli_conn = objt_conn(sess->origin);
|
||||
struct connection *cli_conn = objt_conn(s->si[0].end);
|
||||
int i;
|
||||
|
||||
if (s->pend_pos)
|
||||
|
Loading…
Reference in New Issue
Block a user