- From 7a03968243dbad8cab1a3bdd75794c4d7cc18d96 Mon Sep 17 00:00:00 2001
- From: Christopher Faulet <cfaulet@haproxy.com>
- Date: Mon, 9 Jan 2017 16:33:19 +0100
- Subject: [PATCH] BUG/MINOR: stream: Fix how backend-specific analyzers are set
- on a stream
-
- When the stream's backend was defined, the request's analyzers flag was always
- set to 0 if the stream had no listener. This bug was introduced with the filter
- API but never triggered (I think so).
-
- Because of the commit 5820a366, it is now possible to encountered it. For
- example, this happens when the trace filter is enabled on a SPOE backend. The
- fix is pretty trivial.
-
- This fix must be backported to 1.7.
- (cherry picked from commit 70e2f272127a931a7b245a95e3a022879145e1dd)
- ---
- src/proxy.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
- diff --git a/src/proxy.c b/src/proxy.c
- index fec2555..a84a08f 100644
- --- a/src/proxy.c
- +++ b/src/proxy.c
- @@ -1156,7 +1156,7 @@ int stream_set_backend(struct stream *s, struct proxy *be)
- * be more reliable to store the list of analysers that have been run,
- * but what we do here is OK for now.
- */
- - s->req.analysers |= be->be_req_ana & (strm_li(s) ? ~strm_li(s)->analysers : 0);
- + s->req.analysers |= be->be_req_ana & ~(strm_li(s) ? strm_li(s)->analysers : 0);
-
- /* If the target backend requires HTTP processing, we have to allocate
- * the HTTP transaction and hdr_idx if we did not have one.
- --
- 2.10.2
-
|