Hello,

Please review the attached patch prepared for r14958, it fixes the If-
None-Match processing (incorrect logging [1]) and the bug [2] report
4169 depending on the incorrect (IMO) behavior.

An If-None-Match request for a non-matched (ETag) but cached object
should be processed as normal HIT.

[1] http://lists.squid-cache.org/pipermail/squid-users/2016-November/01
3483.html
[2] http://bugs.squid-cache.org/show_bug.cgi?id=4169

Thanks.

Garri
=== modified file 'src/client_side_reply.cc'
--- src/client_side_reply.cc	2016-11-11 04:28:06 +0000
+++ src/client_side_reply.cc	2016-11-29 09:24:16 +0000
@@ -799,14 +799,7 @@
     bool matchedIfNoneMatch = false;
     if (r.header.has(Http::HdrType::IF_NONE_MATCH)) {
         if (!e->hasIfNoneMatchEtag(r)) {
-            // RFC 2616: ignore IMS if If-None-Match did not match
-            r.flags.ims = false;
-            r.ims = -1;
-            r.imslen = 0;
-            r.header.delById(Http::HdrType::IF_MODIFIED_SINCE);
-            http->logType = LOG_TCP_MISS;
-            sendMoreData(result);
-            return true;
+            return false;
         }
 
         if (!r.flags.ims) {

_______________________________________________
squid-dev mailing list
[email protected]
http://lists.squid-cache.org/listinfo/squid-dev

Reply via email to