From: Willy Tarreau Date: Wed, 24 Nov 2010 15:22:09 +0000 (+0100) Subject: [BUG] http: do not re-enable the PROXY analyser on keep-alive X-Git-Tag: v1.5-dev8~357 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=342b11c4d4fff7611dd8fbd5e9333f344cfdd984;p=thirdparty%2Fhaproxy.git [BUG] http: do not re-enable the PROXY analyser on keep-alive The PROXY analyser is connection-oriented and must only be set once. When an HTTP transaction is done, we must not re-enable it. --- diff --git a/src/proto_http.c b/src/proto_http.c index 47bdb63297..aa3ed53104 100644 --- a/src/proto_http.c +++ b/src/proto_http.c @@ -3948,7 +3948,8 @@ void http_end_txn_clean_session(struct session *s) if (s->rep->lr >= s->rep->data + s->rep->size) s->rep->lr -= s->req->size; - s->req->analysers |= s->listener->analysers; + s->req->analysers = s->listener->analysers; + s->req->analysers &= ~AN_REQ_DECODE_PROXY; s->rep->analysers = 0; http_silent_debug(__LINE__, s); @@ -7356,7 +7357,6 @@ void http_reset_txn(struct session *s) http_init_txn(s); s->be = s->fe; - s->req->analysers = s->listener->analysers; s->logs.logwait = s->fe->to_log; s->srv = s->prev_srv = s->srv_conn = NULL; /* re-init store persistence */