Return-Path: Delivered-To: apmail-tomcat-dev-archive@www.apache.org Received: (qmail 92580 invoked from network); 22 Dec 2005 20:09:24 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 22 Dec 2005 20:09:24 -0000 Received: (qmail 60671 invoked by uid 500); 22 Dec 2005 20:09:17 -0000 Delivered-To: apmail-tomcat-dev-archive@tomcat.apache.org Received: (qmail 60630 invoked by uid 500); 22 Dec 2005 20:09:17 -0000 Mailing-List: contact dev-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Developers List" Delivered-To: mailing list dev@tomcat.apache.org Received: (qmail 60619 invoked by uid 99); 22 Dec 2005 20:09:17 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (hermes.apache.org: local policy) Received: from [204.146.167.214] (HELO Boron.MeepZor.Com) (204.146.167.214) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 22 Dec 2005 12:09:16 -0800 Received: from [127.0.0.1] (cpe-066-057-029-054.nc.res.rr.com [66.57.29.54]) by Boron.MeepZor.Com (8.12.8/8.12.8) with ESMTP id jBMK8IU9013535 for ; Thu, 22 Dec 2005 15:08:43 -0500 Message-ID: <43AB07A0.7020409@wstoddard.com> Date: Thu, 22 Dec 2005 15:08:00 -0500 From: Bill Stoddard Reply-To: bill@wstoddard.com User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Tomcat Developers List Subject: Re: TCK Issue with Tomcat 5.5.12 References: <0F56CBAD-618E-4068-A91C-6E84CA37FB77@gmail.com> <43AA7761.70301@apache.org> In-Reply-To: <43AA7761.70301@apache.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Remy Maucherat wrote: > Bill Barker wrote: > >>> AFAICT, this code is assuming that there will always be a message >>> body in the POST Request. However, this is not necessarily the case >>> (and is certainly not true for the problem at hand). Eventually, >>> SocketInputStream.read() is called from within >>> o.a.coyote.http11.InternalReadBuffer.fill(). This call will throw a >>> SocketTimeoutException. >>> >> >> >> Then the test is broken. It should either have a 'Content-Length: 0' >> header or a 'Transfer-Encoding: chunked' header with a '0' content >> delimater. Nope, that's incorrect. From RFC2616, the official HTTP standard definition: The presence of a message-body in a request is signaled by the inclusion of a Content-Length or Transfer-Encoding header field in the request's message-headers. A bodyless POST request w/o a TE or CL header field is permitted by RFC2616. Of course, if the POST really does have a body, then bad things are guaranteed to happen. > > Or it could close the input of the socket (note: nobody should be crazy > enough to use this method, though, as I suppose it won't work in many > cases). Nope, that technique won't work. The server can close the connection to signal the client that it's done sending a response body, but the client cannot use the same technique to signal the server that it has completed sending a request body. Hope this helps. Bill --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org For additional commands, e-mail: dev-help@tomcat.apache.org