From: Christopher Faulet Date: Wed, 30 Sep 2020 11:49:56 +0000 (+0200) Subject: MINOR: stream: Always get idle duration from the session X-Git-Tag: v2.4-dev3~89 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7a6c51324;p=thirdparty%2Fhaproxy.git MINOR: stream: Always get idle duration from the session Since the idle duration provided by the session is always up-to-date, there is no more reason to rely on the multiplexer cs_info to set it to the stream. --- diff --git a/src/http_ana.c b/src/http_ana.c index d89b7d5d7c..6659f7e7b3 100644 --- a/src/http_ana.c +++ b/src/http_ana.c @@ -109,13 +109,8 @@ int http_wait_for_request(struct stream *s, struct channel *req, int an_bit) s->srv_error = http_return_srv_error; /* If there is data available for analysis, log the end of the idle time. */ - if (c_data(req) && s->logs.t_idle == -1) { - const struct cs_info *csinfo = si_get_cs_info(objt_cs(s->si[0].end)); - - s->logs.t_idle = ((csinfo) - ? csinfo->t_idle - : tv_ms_elapsed(&s->logs.tv_accept, &now) - s->logs.t_handshake); - } + if (c_data(req) && s->logs.t_idle == -1) + s->logs.t_idle = sess->t_idle; /* * Now we quickly check if we have found a full valid request. diff --git a/src/stream.c b/src/stream.c index 15ea23d09d..49654bdb31 100644 --- a/src/stream.c +++ b/src/stream.c @@ -351,14 +351,13 @@ struct stream *stream_new(struct session *sess, enum obj_type *origin) s->logs.accept_date = csinfo->create_date; s->logs.tv_accept = csinfo->tv_create; s->logs.t_handshake = csinfo->t_handshake; - s->logs.t_idle = csinfo->t_idle; } else { s->logs.accept_date = sess->accept_date; s->logs.tv_accept = sess->tv_accept; s->logs.t_handshake = sess->t_handshake; - s->logs.t_idle = -1; } + s->logs.t_idle = sess->t_idle; /* default logging function */ s->do_log = strm_log;