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
@ -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…
x
Reference in New Issue
Block a user