[Mono-bugs] [Bug 76941][Nor] New -
HttpWorkerRequest.ReadEntityBody() does not decode chunked
transfer encoding
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Thu Dec 8 03:18:21 EST 2005
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by dean at brettle.com.
http://bugzilla.ximian.com/show_bug.cgi?id=76941
--- shadow/76941 2005-12-08 03:18:19.000000000 -0500
+++ shadow/76941.tmp.3648 2005-12-08 03:18:19.000000000 -0500
@@ -0,0 +1,61 @@
+Bug#: 76941
+Product: Mono: Tools
+Version: 1.1
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: XSP
+AssignedTo: gonzalo at ximian.com
+ReportedBy: dean at brettle.com
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: HttpWorkerRequest.ReadEntityBody() does not decode chunked transfer encoding
+
+Description of Problem:
+
+For requests that use "chunked" transfer encoding, the body provided by
+XSP's HttpWorkerRequest.ReadEntityBody() is still encoded. Under IIS/.NET
+the body has been decoded.
+
+Steps to reproduce the problem:
+1. Create a simple HttpModule or IHttpHandler that logs the body available
+via HttpWorkerRequest.ReadEntityBody().
+2. Send a chunked request to the server. For example, you could use
+something like:
+
+curl -X POST -H 'Transfer-Encoding: chunked' --data-binary @test.body
+http://tempuri.org/path.aspx
+
+3. Examine the logged entity body.
+
+Actual Results:
+
+The body is still chunk encoded.
+
+Expected Results:
+
+The body has been decoded.
+
+How often does this happen?
+
+Everytime.
+
+Additional Information:
+
+I'm using xsp-1.1.10-1.
+
+To minimize latency and memory usage, the body should be decoded on demand
+instead of decoded as a batch.
+
+I'm afraid I don't have time to put together a test case right now.
+However I do have some C# code which dechunks a body on the fly. I'll
+attach it.
+
+Chunked requests are broken when using mod_mono as well, albeit the
+behavior isn't quite the same. Instead of returning an encoded entity
+body, HttpWorkerRequest.ReadEntityBody() returns nothing at all under mod_mono.
More information about the mono-bugs
mailing list