httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Justin Erenkrantz <jus...@erenkrantz.com>
Subject Re: extra characters in between response headers and response body of apache 1.3 but not in apache2.0
Date Tue, 23 Aug 2005 03:19:41 GMT
On Sun, Aug 21, 2005 at 01:54:01PM -0500, William A. Rowe, Jr. wrote:
> At 09:30 AM 8/19/2005, Jeff Trawick wrote:
> >On 8/19/05, Kaushal Jha - ZEDO <kaushal@zedo.com> wrote:
> >>  
> >> hey guys, 
> >>                    I observed that only apache 1.3 (1.3.33) sends out the
> >> extra characters as shown below 
> >> apache2.0 does not send out those characters,  
> >
> >go read up on "Transfer-Encoding: chunked"; those funny little
> >characters tell the client in hex the size of the next chunk of data;
> >the "0" size says we're done
> 
> Yes; this is a BUG in 2.0 (and folks say that CHUNKED_PASS
> semantics are wrong...)

As far as I can tell, the example was from a chunked response - not a
chunked request.

Therefore, I don't know why you say there's evidently a bug in 2.x.

> Any CGI author who parses Transfer-Encoding:chunked and knows
> how to deal with it expects the chunk headers; apache 1.3 does
> this correctly.

Not true.  CGIs can't handle chunked request bodies in 1.3 (mod_cgi uses
REQUEST_CHUNKED_ERROR).  So, 1.3 would always reject such bodies well
before any script could execute.

> Apache 2.0 needs to do so as well, but transparently, because
> filters in between know damned well that Apache has dechunked
> the data.  I'm thinking of something as simple as a 'sentinal'
> bucket type to mark a new chunk, who's size would be recomputed
> and formatted when that brigade is written, lest another filter
> has added or removed bytes in the chunk.

You could stick in a metadata bucket - but I don't see how that could
get passed to a CGI program.  -- justin

Mime
View raw message