BUG/MINOR: rules: Preserve FLT_END analyzers on silent-drop 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.7.
This commit is contained in:
Christopher Faulet 2020-03-06 15:10:46 +01:00
parent 5e896510a8
commit 177f480f2c

View File

@ -1264,9 +1264,8 @@ static enum act_return tcp_exec_action_silent_drop(struct act_rule *rule, struct
if (strm) {
channel_abort(&strm->req);
channel_abort(&strm->res);
strm->req.analysers = 0;
strm->res.analysers = 0;
_HA_ATOMIC_ADD(&strm->be->be_counters.denied_req, 1);
strm->req.analysers &= AN_REQ_FLT_END;
strm->res.analysers &= AN_RES_FLT_END;
if (!(strm->flags & SF_ERR_MASK))
strm->flags |= SF_ERR_PRXCOND;
if (!(strm->flags & SF_FINST_MASK))