BUG/MEDIUM: mux-h1: Remove H1C_F_WAIT_NEXT_REQ flag on a next request
When an idle H1 connection starts to process an new request, we must take care to remove H1C_F_WAIT_NEXT_REQ flag. This flag is used to know an idle H1 connection has already processed at least one request and is waiting for a next one, but nothing was received yet. Keeping this flag leads to a crash because some running H1 connections may be erroneously released on a soft-stop. Indeed, only idle or closed connections must be released. This bug was reported into #1903. It is 2.7-specific. No backport needed.
This commit is contained in:
parent
881cce9f13
commit
4427ea7f04
|
@ -750,7 +750,7 @@ static struct h1s *h1s_new(struct h1c *h1c)
|
|||
if (h1c->flags & H1C_F_WAIT_NEXT_REQ)
|
||||
h1s->flags |= H1S_F_NOT_FIRST;
|
||||
h1s->h1c->state = H1_CS_EMBRYONIC;
|
||||
|
||||
h1s->h1c->flags &= ~H1C_F_WAIT_NEXT_REQ;
|
||||
TRACE_LEAVE(H1_EV_H1S_NEW, h1c->conn, h1s);
|
||||
return h1s;
|
||||
|
||||
|
|
Loading…
Reference in New Issue