BUG/MEDIUM: filters: Exec pre/post analysers only one time per filter
authorChristopher Faulet <cfaulet@haproxy.com>
Thu, 20 May 2021 16:00:55 +0000 (18:00 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Mon, 31 May 2021 13:19:48 +0000 (15:19 +0200)
commit088f378c436cd0075f04a7304b4c921fbcd3ea22
treefb763fcb60b45fc8d4d040ba909b0de80d60b10d
parentac458459c2db807bb5ff5b51c2e40a6633bf2101
BUG/MEDIUM: filters: Exec pre/post analysers only one time per filter

For each filter, pre and post callback functions must only be called one
time. To do so, when one of them is finished, the corresponding analyser bit
must be removed from pre_analyzers or post_analyzers bit field. It is only
an issue with pre-analyser callback functions if the corresponding analyser
yields. It may happens with lua action for instance. In this case, the
filters pre analyser callback function is unexpectedly called several times.

This patch should fix the issue #1263. It must be backported is all stable
versions.

(cherry picked from commit a6d3704e38b6c1cb09286e9778b6363825d65c4d)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 476013c1213bd053c4c29984fc07c980e71893a2)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
src/filters.c