|
commit 33d58b51e0f1bf68603aa86c9125ae75d6964454
|
|
Author: Christopher Faulet <cfaulet@haproxy.com>
|
|
Date: Mon Jul 1 16:17:30 2019 +0200
|
|
|
|
BUG/MINOR: mux-h1: Don't return the empty chunk on HEAD responses
|
|
|
|
HEAD responses must not have any body payload. But, because of a bug, for chunk
|
|
reponses, the empty chunk was always added.
|
|
|
|
This patch fixes the Github issue #146. It must be backported to 2.0 and 1.9.
|
|
|
|
(cherry picked from commit b8fc304e8f996f0d9835e4d6524ef8961d3be076)
|
|
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
|
|
|
|
diff --git a/src/mux_h1.c b/src/mux_h1.c
|
|
index e7d769b4..37cc8252 100644
|
|
--- a/src/mux_h1.c
|
|
+++ b/src/mux_h1.c
|
|
@@ -1682,6 +1682,8 @@ static size_t h1_process_output(struct h1c *h1c, struct buffer *buf, size_t coun
|
|
h1m->flags |= (H1_MF_NO_PHDR|H1_MF_CLEAN_CONN_HDR);
|
|
h1s->flags &= ~H1S_F_HAVE_O_CONN;
|
|
}
|
|
+ else if ((h1m->flags & H1_MF_RESP) && h1s->meth == HTTP_METH_HEAD)
|
|
+ h1m->state = H1_MSG_DONE;
|
|
else
|
|
h1m->state = H1_MSG_DATA;
|
|
break;
|