From c61966f9b468b72528f854f4bc64bb5934751384 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Thu, 31 Oct 2019 15:10:03 +0100 Subject: [PATCH] BUG/MEDIUM: mux-h2: report no available stream on a connection having errors If an H2 mux has met an error, we must not report available streams anymore, or it risks to accumulate new streams while not being able to process them. This should be backported to 2.0 and 1.9. --- src/mux_h2.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/mux_h2.c b/src/mux_h2.c index e83f346e3..22bf42919 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -752,6 +752,9 @@ static int h2_avail_streams(struct connection *conn) if (h2c->last_sid >= 0) return 0; + if (h2c->st0 >= H2_CS_ERROR) + return 0; + /* note: may be negative if a SETTINGS frame changes the limit */ ret1 = h2c->streams_limit - h2c->nb_streams;