mirror of
https://github.com/haproxy/haproxy.git
synced 2026-02-25 10:50:31 -05:00
BUG/MINOR: h2: immediately close if receiving GOAWAY after the last stream
The h2spec test suite reveals that a GOAWAY frame received after the last stream doesn't cause an immediate close, because we count on the last stream to quit to do so. By simply setting the last_sid to the received value in case it was not set, we can ensure to properly close an idle connection during h2_wake(). To be backported to 1.8.
This commit is contained in:
parent
811ad12414
commit
11cc2d6031
1 changed files with 2 additions and 0 deletions
|
|
@ -1399,6 +1399,8 @@ static int h2c_handle_goaway(struct h2c *h2c)
|
|||
last = h2_get_n32(h2c->dbuf, 0);
|
||||
h2c->errcode = h2_get_n32(h2c->dbuf, 4);
|
||||
h2_wake_some_streams(h2c, last, CS_FL_ERROR);
|
||||
if (h2c->last_sid < 0)
|
||||
h2c->last_sid = last;
|
||||
return 1;
|
||||
|
||||
conn_err:
|
||||
|
|
|
|||
Loading…
Reference in a new issue