BUG/MINOR: mux-h1: Always set the session on frontend h1 stream
The session is always defined for a frontend connection. When a new client
connection is established, the session is set for the first H1 stream. But on
keep-alived connections, it is not set for the followings H1 streams while it is
possible.
This patch is tagged as a bug because it fixes an inconsistency in the H1
streams creation. But it does not fixed a known bug.
This patch must be backported as far as 2.0.
(cherry picked from commit e9da975aabb0f2137bde7afbd020b300029ef28f)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 595a3f3b14ca1e5cae02d3e8530c88dc4bbbe6e4)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 6eaa2f519edeeeda1a998bcb205fb553a8c22bc1)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/mux_h1.c b/src/mux_h1.c
index 64f8355..0d22a44 100644
--- a/src/mux_h1.c
+++ b/src/mux_h1.c
@@ -343,7 +343,7 @@
/* For frontend connections we should always have a session */
if (!sess)
- sess = h1c->conn->owner;
+ h1s->sess = sess = h1c->conn->owner;
/* Timers for subsequent sessions on the same HTTP 1.x connection
* measure from `now`, not from the connection accept time */