read_timeout is not reset correctly in tunnel.cc

From: Jean-Philippe Menil <jean-philippe.menil_at_univ-nantes.fr>
Date: Fri, 20 Apr 2012 10:27:50 +0200

Hi,

like disussed earlier on the squid-users mailing list
(http://www.squid-cache.org/mail-archive/squid-users/201204/0280.html);
i experiment problem due to read_timeout not reset correctly in tunnel.cc.

Example:
when i download a file on https site, the download stop on the
read_timeout value.
It can be esealy repeat:

read_timeout 30 seconds
(the defautl is 15 minutes, but it fail too)

wget --no-check-certificate
https://nzdis.org/projects/projects/perfnet/repository/revisions/4/raw/vendor/Vyatta/Vyatta/vyatta-livecd-vc5.0.2.iso

-O /dev/null

With the following (obvious) patch, i can't repeat the problem:

01-build64:/home/menil-jp/squid-3.2.0.17# diff src/tunnel.cc
/tmp/squid-3.2.0.17/src/tunnel.cc
321,326d320
< if (Comm::IsConnOpen(to.conn)) {
< AsyncCall::Pointer timeoutCall = commCbCall(5, 4, "tunnelTimeout",
< CommTimeoutCbPtrFun(tunnelTimeout, this));
< commSetConnTimeout(to.conn, Config.Timeout.read, timeoutCall);
< }
<
333,336c327,330
< /* Only close the remote end if we've finished queueing data to it */
< if (from.len == 0 && Comm::IsConnOpen(to.conn) ) {
< to.conn->close();
< }

Please, can anyone confirm this problem?

Best regards.

-- 
Jean-Philippe Menil - Pôle réseau Service IRTS
DSI Université de Nantes
jean-philippe.menil_at_univ-nantes.fr
Tel : 02.53.48.49.27 - Fax : 02.53.48.49.09
Received on Fri Apr 20 2012 - 09:22:03 MDT

This archive was generated by hypermail 2.2.0 : Fri Apr 20 2012 - 12:00:10 MDT