From: hno <> Date: Sat, 3 Apr 2004 21:17:36 +0000 (+0000) Subject: Bug #426: "Vary: *" ignored X-Git-Tag: SQUID_3_0_PRE4~1130 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9776e3ccfb0c2458d2f02a45eabc1114b9c13866;p=thirdparty%2Fsquid.git Bug #426: "Vary: *" ignored "Vary: *" headers was ingored, possibly returning unacceptable cache hits if such header is present. --- diff --git a/src/http.cc b/src/http.cc index 33ca9f6daa..73db0159b5 100644 --- a/src/http.cc +++ b/src/http.cc @@ -1,6 +1,6 @@ /* - * $Id: http.cc,v 1.429 2003/10/22 21:40:40 robertc Exp $ + * $Id: http.cc,v 1.430 2004/04/03 14:17:36 hno Exp $ * * DEBUG: section 11 Hypertext Transfer Protocol (HTTP) * AUTHOR: Harvest Derived @@ -532,6 +532,14 @@ httpMakeVaryMark(HttpRequest * request, HttpReply const * reply) char *name = (char *)xmalloc(ilen + 1); xstrncpy(name, item, ilen + 1); Tolower(name); + + if (strcmp(name, "*") == 0) { + /* Can not handle "Vary: *" withtout ETag support */ + safe_free(name); + vstr.clean(); + break; + } + strListAdd(&vstr, name, ','); hdr = httpHeaderGetByName(&request->header, name); safe_free(name);