From 907998194beca875572b6330fe7b6240b3c79d57 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Mon, 10 Dec 2018 19:28:38 +0100 Subject: [PATCH] MEDIUM: mux-h2: make use of hpack_encode_path() to encode the path The HTTP path encoding was open-coded with a HPACK byte matching the "/" or "/index.html" paths. Let's make use of the new functions to avoid this. --- src/mux_h2.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/mux_h2.c b/src/mux_h2.c index 80a6fe0c2..15fd304cf 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -4077,13 +4077,7 @@ static size_t h2s_htx_bck_make_req_headers(struct h2s *h2s, struct htx *htx) } /* encode the path, which necessarily is the second one */ - if (outbuf.data < outbuf.size && isteq(path, ist("/"))) { - outbuf.area[outbuf.data++] = 0x84; // indexed field : idx[04]=(":path", "/") - } - else if (outbuf.data < outbuf.size && isteq(path, ist("/index.html"))) { - outbuf.area[outbuf.data++] = 0x85; // indexed field : idx[04]=(":path", "/index.html") - } - else if (!hpack_encode_header(&outbuf, ist(":path"), path)) { + if (!hpack_encode_path(&outbuf, path)) { /* output full */ if (b_space_wraps(&h2c->mbuf)) goto realign_again;