dropping headers in parse mode

From: David Nicklay <dnicklay@dont-contact.us>
Date: 23 Jun 2003 12:07:17 -0400

Hi,

While attempting to work with an unusual backend for our reverse squid
proxy, we came across a set of requests which squid refused to cache.
In the process of debugging we found that this header causes problems
for squid:
Cache-Control: no-cache="set-cookie,set-cookie2"
Squid will not cache this request even with ignore-reload enabled. The
anonymizer doesn't seem to do what I want as the decision to cache the
request is made before then in the process? With a quick and dirty
hack, I was able to make squid drop the header and it subsequently was
able to cache the request.

My question is: Is there a facility in squid to do this already (I
could not find one), which will drop the header before the squid cache
decision making process is made? If not would anyone care if I made and
submitted a patch to do this?

Here is my quick and dirty hack:
in httpHeaderEntryParseCreate of HttpHeader.c

    ....
    /* set field name */
    if (id == HDR_OTHER)
        stringLimitInit(&e->name, field_start, name_len);
    else if ( id == HDR_CACHE_CONTROL) {
        debug(55,2) ("NOTICE: Dropping cache control header\n");
        memFree(e, MEM_HTTP_HDR_ENTRY);
        return NULL;
    } else
        e->name = Headers[id].name;
     ....

-- 
David Nicklay
Location: CNN Center - SE0811A
Office: 404-827-2698	Cell: 404-545-6218
Received on Mon Jun 23 2003 - 10:03:20 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:20:09 MST