From: Christopher Faulet Date: Mon, 28 Nov 2016 13:21:27 +0000 (+0100) Subject: BUG/MINOR: http: Call XFER_DATA analyzer when HTTP txn is switched in tunnel mode X-Git-Tag: v1.8-dev1~312 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6962f4e0d6dd1f1e976f815c1c8afaabfadc93fa;p=thirdparty%2Fhaproxy.git BUG/MINOR: http: Call XFER_DATA analyzer when HTTP txn is switched in tunnel mode This allow a filter to start to analyze data in HTTP and to fallback in TCP when data are tunneled. [wt: backport desired in 1.7 - no impact right now but may impact the ability to backport future fixes] --- diff --git a/src/proto_http.c b/src/proto_http.c index 1ba36e7d7a..a37e2909fa 100644 --- a/src/proto_http.c +++ b/src/proto_http.c @@ -5598,6 +5598,10 @@ int http_resync_states(struct stream *s) s->res.analysers &= AN_FLT_END; channel_auto_close(&s->res); channel_auto_read(&s->res); + if (txn->req.msg_state == HTTP_MSG_TUNNEL && HAS_REQ_DATA_FILTERS(s)) + s->req.analysers |= AN_FLT_XFER_DATA; + if (txn->rsp.msg_state == HTTP_MSG_TUNNEL && HAS_RSP_DATA_FILTERS(s)) + s->res.analysers |= AN_FLT_XFER_DATA; } else if ((txn->req.msg_state >= HTTP_MSG_DONE && (txn->rsp.msg_state == HTTP_MSG_CLOSED || (s->res.flags & CF_SHUTW))) ||