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 <[EMAIL PROTECTED]> 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
