mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-02-09 14:58:25 +00:00
BUG/MAJOR: http: Fix possible infinity loop in http_sync_(req|res)_state
In commit "MINOR: http: Switch requests/responses in TUNNEL mode only by checking txn flags", it is possible to have an infinite loop on HTTP_MSG_CLOSING state.
This commit is contained in:
parent
ac752ff68c
commit
56d260916f
@ -5413,8 +5413,8 @@ int http_sync_req_state(struct stream *s)
|
||||
else if (chn->flags & CF_SHUTW) {
|
||||
txn->req.err_state = txn->req.msg_state;
|
||||
txn->req.msg_state = HTTP_MSG_ERROR;
|
||||
goto wait_other_side;
|
||||
}
|
||||
goto wait_other_side;
|
||||
}
|
||||
|
||||
if (txn->req.msg_state == HTTP_MSG_CLOSED) {
|
||||
@ -5542,8 +5542,8 @@ int http_sync_res_state(struct stream *s)
|
||||
s->be->be_counters.cli_aborts++;
|
||||
if (objt_server(s->target))
|
||||
objt_server(s->target)->counters.cli_aborts++;
|
||||
goto wait_other_side;
|
||||
}
|
||||
goto wait_other_side;
|
||||
}
|
||||
|
||||
if (txn->rsp.msg_state == HTTP_MSG_CLOSED) {
|
||||
|
Loading…
Reference in New Issue
Block a user