BUG/MINOR: h1-htx: Fix a typo when request parser is reset
authorChristopher Faulet <cfaulet@haproxy.com>
Thu, 23 Sep 2021 13:38:26 +0000 (15:38 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Fri, 1 Oct 2021 16:50:22 +0000 (18:50 +0200)
In h1_postparse_req_hdrs(), if we need more space to copy headers, the request
parser is reset. However, because of a typo, it was reset as a response parser
instead of a request one. h1m_init_req() must be called.

This patch must be backported as far as 2.2.

(cherry picked from commit 216d3352b1aac1bff19383b6a6e5476e11e613e9)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit c7c20a7692130c42796b1a63e9d72c3e933fe737)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>

src/h1_htx.c

index c57e448..0236b3c 100644 (file)
@@ -173,7 +173,7 @@ static int h1_postparse_req_hdrs(struct h1m *h1m, union h1_sl *h1sl, struct htx
        if (h1_eval_htx_size(meth, uri, vsn, hdrs) > max) {
                if (htx_is_empty(htx))
                        goto error;
-               h1m_init_res(h1m);
+               h1m_init_req(h1m);
                h1m->flags |= (H1_MF_NO_PHDR|H1_MF_CLEAN_CONN_HDR);
                return 0;
        }