mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-11-28 06:11:32 +01:00
BUG/MINOR: mux-h2: don't refrain from sending an RST_STREAM after another one
The test in h2s_send_rst_stream() is excessive, it refrains from sending an RST_STREAM if *the last frame* was an RST_STREAM, regardless of the stream ID. In a context where both clients and servers abort a lot, it could happen that one RST_STREAM is dropped from responses from time to time, causing delays to the client. This must be backported to 2.0, 1.9 and 1.8.
This commit is contained in:
parent
1b77262cfb
commit
231f616170
@ -1321,7 +1321,7 @@ static int h2s_send_rst_stream(struct h2c *h2c, struct h2s *h2s)
|
||||
/* RFC7540#5.4.2: To avoid looping, an endpoint MUST NOT send a
|
||||
* RST_STREAM in response to a RST_STREAM frame.
|
||||
*/
|
||||
if (h2c->dft == H2_FT_RST_STREAM) {
|
||||
if (h2c->dsi == h2s->id && h2c->dft == H2_FT_RST_STREAM) {
|
||||
ret = 1;
|
||||
goto ignore;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user