On Sat, 5 Jan 2008 00:07:42 +0000
Nick Kew <[EMAIL PROTECTED]> wrote:

A quick heads-up:

> Regression: fails to proxy massively chunked responses.

r609394 fixes this, but introduces (or unmasks) new issues
with chunked data edge-cases.  Specifically, two testcases
in which the termination of the chunked data involves
extra zeros (65 in total):

[valid chunk]
0000000000000000000000000000000000000000000\r\n
\r\n

Silly, but technically we should accept it.

1. With that in the Request, httpd rejects it with 413.
   Seems fair to me.

2. With that in the Response, httpd breaks more seriously:
   it fails to forward *any* termination, and the client is
   left in limbo expecting more data.  This one we need to fix.

The response trace is:

    HTTP/1.1 200 OK\r\n
    Transfer-Encoding: chunked\r\n
    Date: Sun, 06 Jan 2008 22:47:28 GMT\r\n
    Connection: close\r\n
    \r\n
    64\r\n
    [data]\r\n
    00000000000000000000000000000000000000000000000000000000000000000\r\n
    \r\n

which the proxy turns into:

    HTTP/1.1 200 OK\r\n
    Date: Sun, 06 Jan 2008 22:47:28 GMT\r\n
    Via: 1.1 grimnir.webthing.com\r\n
    Connection: close\r\n
    Transfer-Encoding: chunked\r\n
    \r\n
    64\r\n
    [data]\r\n
    **** nothing more! ****

-- 
Nick Kew

Application Development with Apache - the Apache Modules Book
http://www.apachetutor.org/

Reply via email to