[Varnish] #731: Can't remove illegal header without terminal colon
Varnish
varnish-bugs at varnish-cache.org
Thu Jul 1 19:39:10 CEST 2010
#731: Can't remove illegal header without terminal colon
-------------------+--------------------------------------------------------
Reporter: slink | Type: defect
Status: new | Priority: normal
Milestone: | Component: build
Version: trunk | Severity: normal
Keywords: |
-------------------+--------------------------------------------------------
I needed to find a server-side solution for a broken client which
constructs malformed requests with a carriage return after the URI like
{{{
GET URI\r HTTP/1.1
}}}
After parsing this request with http_splitline, we get an illegal header
{{{
HTTP/1.1
}}}
which I would like to remove in a VCL. This rightly can't be done in VCL-
code alone, but I would like to use the following inline C-Code to remove
it:
{{{
C{
VRT_SetHdr(sp, HDR_REQ, "\011 HTTP/1.1", 0);
}C
}}}
which triggers a failed assertion in http_IsHdr due to the missing colon,
so this is a request to remove the respective assertion.
Yes,I know this is somewhere between a defect and an enhancement, I hope a
ticket is the right place for it.
Thank you, Nils
--
Ticket URL: <http://varnish-cache.org/ticket/731>
Varnish <http://varnish-cache.org/>
The Varnish HTTP Accelerator
More information about the varnish-bugs
mailing list