mirror of
https://github.com/haproxy/haproxy.git
synced 2026-05-28 04:12:17 -04:00
[MINOR] http request: simplify the test of no-data
Now we can rely on (chunked && !hdr_content_len) to stop forwarding data. We only do that for known methods that are not CONNECT though.
This commit is contained in:
parent
4273664a1b
commit
349a0f62b5
1 changed files with 3 additions and 10 deletions
|
|
@ -2390,16 +2390,9 @@ int http_process_req_common(struct session *s, struct buffer *req, int an_bit, s
|
|||
}
|
||||
|
||||
/* We can shut read side if "connection: close" && !abort_on_close && !content-length */
|
||||
if ((txn->meth == HTTP_METH_GET || txn->meth == HTTP_METH_HEAD) &&
|
||||
(s->flags & SN_CONN_CLOSED) && !(s->be->options & PR_O_ABRT_CLOSE)) {
|
||||
struct hdr_ctx ctx;
|
||||
ctx.idx = 0;
|
||||
if (!http_find_header2("Transfer-Encoding", 17, msg->sol, &txn->hdr_idx, &ctx)) {
|
||||
ctx.idx = 0;
|
||||
if (!http_find_header2("Content-length", 14, msg->sol, &txn->hdr_idx, &ctx))
|
||||
req->flags |= BF_DONT_READ;
|
||||
}
|
||||
}
|
||||
if ((s->flags & SN_CONN_CLOSED) && !(s->be->options & PR_O_ABRT_CLOSE) &&
|
||||
!(txn->flags & TX_REQ_TE_CHNK) && !txn->req.hdr_content_len && (txn->meth < HTTP_METH_CONNECT))
|
||||
req->flags |= BF_DONT_READ;
|
||||
|
||||
/* that's OK for us now, let's move on to next analysers */
|
||||
return 1;
|
||||
|
|
|
|||
Loading…
Reference in a new issue