BUG/MINOR: http-rules: Preserve FLT_END analyzers on reject action
When at least a filter is attached to a stream, FLT_END analyzers must be
preserved on request and response channels.
This patch should be backported as far as 1.8.
(cherry picked from commit c5bb5a0f2b36bffcea807bd7e529abdc35c23067)
Signed-off-by: Willy Tarreau <w@1wt.eu>
(cherry picked from commit 961850da7dd1fc96168f4b55ec5430db4b206a3c)
Signed-off-by: Willy Tarreau <w@1wt.eu>
diff --git a/src/http_act.c b/src/http_act.c
index 1e235f8..3d6ef9b 100644
--- a/src/http_act.c
+++ b/src/http_act.c
@@ -285,8 +285,8 @@
si_must_kill_conn(chn_prod(&s->req));
channel_abort(&s->req);
channel_abort(&s->res);
- s->req.analysers = 0;
- s->res.analysers = 0;
+ s->req.analysers &= AN_RES_FLT_END;
+ s->res.analysers &= AN_REQ_FLT_END;
_HA_ATOMIC_ADD(&s->be->be_counters.denied_req, 1);
_HA_ATOMIC_ADD(&sess->fe->fe_counters.denied_req, 1);