mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-18 01:14:38 +00:00
MINOR: h1-htx/http-ana: Set BODYLESS flag on message in TUNNEL state
When a H1 message is parsed, if the parser state is switched to TUNNEL mode just after the header parsing, the BODYLESS flag is set on the HTX start-line. By transitivity, the corresponding flag is set on the message in HTTP analysers. Thus it is possible to rely on it to not wait for the request body.
This commit is contained in:
parent
2a40854244
commit
c31bc724d4
@ -146,6 +146,8 @@ static unsigned int h1m_htx_sl_flags(struct h1m *h1m)
|
||||
else
|
||||
flags |= HTX_SL_F_BODYLESS;
|
||||
}
|
||||
if (h1m->state == H1_MSG_TUNNEL)
|
||||
flags |= HTX_SL_F_BODYLESS;
|
||||
return flags;
|
||||
}
|
||||
|
||||
|
@ -875,8 +875,8 @@ int http_wait_for_request_body(struct stream *s, struct channel *req, int an_bit
|
||||
if (htx->flags & HTX_FL_PROCESSING_ERROR)
|
||||
goto return_int_err;
|
||||
|
||||
/* CONNECT requests have no body */
|
||||
if (txn->meth == HTTP_METH_CONNECT)
|
||||
/* Do nothing for bodyless and CONNECT requests */
|
||||
if (txn->meth == HTTP_METH_CONNECT || (msg->flags & HTTP_MSGF_BODYLESS))
|
||||
goto http_end;
|
||||
|
||||
/* We have to parse the HTTP request body to find any required data.
|
||||
|
Loading…
Reference in New Issue
Block a user