From: Robert Collins Date: Tue, 15 Jun 2010 08:26:43 +0000 (+1200) Subject: Bug 2950: HTTP responses with no Date, Last-modified or expired can X-Git-Tag: SQUID_3_2_0_1~136 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0e87db68d6527297ad6b07b15fe720d78c3dca3e;p=thirdparty%2Fsquid.git Bug 2950: HTTP responses with no Date, Last-modified or expired can now be cached (given an appropriate refresh_pattern). Previously we were not caching them in case of an infinite loop in cache farms: however Squid adds Date: headers now which remove that concern. --- diff --git a/ChangeLog b/ChangeLog index 4bb4ae5d3b..b6cdfeb3ef 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Changes in development: + + - Bug 2950: HTTP responses with no Date, Last-modified or expired can + now be cached (given an appropriate refresh_pattern). Previously we + were not caching them in case of an infinite loop in cache farms: + however Squid adds Date: headers now which remove that concern. + Changes to squid-3.1.4 (30 May 2010): - Bug 2933: Verification of the max. port number for WCCP2 dynamic service diff --git a/src/http.cc b/src/http.cc index 2420d62190..8260c5f2dc 100644 --- a/src/http.cc +++ b/src/http.cc @@ -441,22 +441,8 @@ HttpStateData::cacheableReply() if (!refreshIsCachable(entry) && !REFRESH_OVERRIDE(store_stale)) { debugs(22, 3, "refreshIsCachable() returned non-cacheable.."); return 0; - } - - /* don't cache objects from peers w/o LMT, Date, or Expires */ - /* check that is it enough to check headers @?@ */ - if (rep->date > -1) - return 1; - else if (rep->last_modified > -1) - return 1; - else if (!_peer) - return 1; - - /* @?@ (here and 302): invalid expires header compiles to squid_curtime */ - else if (rep->expires > -1) - return 1; - else - return 0; + } else + return 1; /* NOTREACHED */ break;