From: Christopher Faulet Date: Fri, 8 Nov 2019 14:31:49 +0000 (+0100) Subject: BUG/MEDIUM: filters: Don't call TCP callbacks for HTX streams X-Git-Tag: v2.1-dev5~17 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bb9a7e04bd806cd78baf62eea0a84e1d8cd70573;p=thirdparty%2Fhaproxy.git BUG/MEDIUM: filters: Don't call TCP callbacks for HTX streams For now, TCP callbacks are incompatible with the HTX streams because they are designed to manipulate raw buffers. A new callback will probably be added to be used in both modes, raw and HTX. So, for HTX streams, these callbacks are ignored. This should not be a real problem because there is no known filters, expect the trace filter, implementing these callbacks. This patch must be backported to 2.0 and 1.9. --- diff --git a/src/filters.c b/src/filters.c index 23af163d30..c7f3ebd791 100644 --- a/src/filters.c +++ b/src/filters.c @@ -981,7 +981,7 @@ flt_xfer_data(struct stream *s, struct channel *chn, unsigned int an_bit) DBG_TRACE_ENTER(STRM_EV_STRM_ANA|STRM_EV_TCP_ANA|STRM_EV_FLT_ANA, s); /* If there is no "data" filters, we do nothing */ - if (!HAS_DATA_FILTERS(s, chn)) + if (!HAS_DATA_FILTERS(s, chn) || (s->flags & SF_HTX)) goto end; /* Be sure that the output is still opened. Else we stop the data