Return-Path: Delivered-To: apmail-httpd-dev-archive@www.apache.org Received: (qmail 66464 invoked from network); 28 Nov 2006 18:10:19 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 28 Nov 2006 18:10:19 -0000 Received: (qmail 6247 invoked by uid 500); 28 Nov 2006 18:10:22 -0000 Delivered-To: apmail-httpd-dev-archive@httpd.apache.org Received: (qmail 6178 invoked by uid 500); 28 Nov 2006 18:10:21 -0000 Mailing-List: contact dev-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@httpd.apache.org Received: (qmail 6167 invoked by uid 99); 28 Nov 2006 18:10:21 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 28 Nov 2006 10:10:21 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: local policy) Received: from [209.133.192.6] (HELO devsys.jaguNET.com) (209.133.192.6) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 28 Nov 2006 10:10:09 -0800 Received: (from jim@localhost) by devsys.jaguNET.com (8.13.8/jag-2.6) id kASI9lB06280 for dev@httpd.apache.org; Tue, 28 Nov 2006 13:09:47 -0500 (EST) From: Jim Jagielski Message-Id: <200611281809.kASI9lB06280@devsys.jaguNET.com> Subject: Re: svn commit: r480135 - /httpd/httpd/trunk/modules/http/http_filters.c To: dev@httpd.apache.org Date: Tue, 28 Nov 2006 13:09:44 -0500 (EST) Reply-To: jim@jaguNET.com In-Reply-To: <20061128180508.GC17309@redhat.com> from "Joe Orton" at Nov 28, 2006 06:05:09 PM X-Mailer: ELM [version 2.5 PL5] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Joe Orton wrote: > > On Tue, Nov 28, 2006 at 05:36:55PM -0000, Jim Jagielski wrote: > > Author: jim > > Date: Tue Nov 28 09:36:45 2006 > > New Revision: 480135 > > > > URL: http://svn.apache.org/viewvc?view=rev&rev=480135 > > Log: > > Apply patch for PR 41056 (19954) to fix chunk > > filter. Now flushes work better. > > This looks wrong to me. When reading the CRLF in state == BODY_CHUNK > with block == _NONBLOCK, the initial ap_get_brigade() may return EAGAIN, > and then the code will fall into the generic error handling branch: > > /* Detect chunksize error (such as overflow) */ > if (rv != APR_SUCCESS || ctx->remaining < 0) { > > The API use is weird too. This code presumes that the next filter > indicates read-would-block only by returning SUCCESS with an empty > brigade. Yet it signals the same thing to the downstream filter only by > failing with EAGAIN! > My intent was, as long as it passes the test-framework (and it does), to take advantage of CTR and not let this patch not get a look over... I agree that it's not complete yet and I've only done a cursory look at it myself to be honest with you. :) -- =========================================================================== Jim Jagielski [|] jim@jaguNET.com [|] http://www.jaguNET.com/ "If you can dodge a wrench, you can dodge a ball."