From ee335e65dc8f4ac691d4e5be7b0c3c98e6ec83e4 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Tue, 21 Apr 2015 18:15:13 +0200 Subject: [PATCH] BUG/MEDIUM: http: properly retrieve the front connection Commit 350f487 ("CLEANUP: session: simplify references to chn_{prod,cons}(&s->{req,res})") introduced a regression causing the cli_conn to be picked from the server side instead of the client side, so the XFF header is not appended anymore since the connection is NULL. Thanks to Reinis Rozitis for reporting this bug. No backport is needed as it's 1.6-specific. --- src/proto_http.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/proto_http.c b/src/proto_http.c index 377160b4ba..d20225a921 100644 --- a/src/proto_http.c +++ b/src/proto_http.c @@ -4343,7 +4343,7 @@ int http_process_request(struct stream *s, struct channel *req, int an_bit) struct session *sess = s->sess; struct http_txn *txn = s->txn; struct http_msg *msg = &txn->req; - struct connection *cli_conn = objt_conn(s->si[1].end); + struct connection *cli_conn = objt_conn(strm_sess(s)->origin); if (unlikely(msg->msg_state < HTTP_MSG_BODY)) { /* we need more data */