Return-Path: Delivered-To: apmail-perl-dev-archive@www.apache.org Received: (qmail 97750 invoked from network); 7 May 2005 17:33:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 7 May 2005 17:33:46 -0000 Received: (qmail 78108 invoked by uid 500); 7 May 2005 17:36:41 -0000 Delivered-To: apmail-perl-dev-archive@perl.apache.org Received: (qmail 78089 invoked by uid 500); 7 May 2005 17:36:41 -0000 Mailing-List: contact dev-help@perl.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Delivered-To: mailing list dev@perl.apache.org Received: (qmail 78072 invoked by uid 99); 7 May 2005 17:36:41 -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 mail.logilune.com (HELO mail.logilune.com) (195.80.154.36) by apache.org (qpsmtpd/0.28) with ESMTP; Sat, 07 May 2005 10:36:40 -0700 Received: from [127.0.0.1] (localhost.logilune.com [127.0.0.1]) by mail.logilune.com (Postfix) with ESMTP id D6CDBD6E7F; Sat, 7 May 2005 19:33:40 +0200 (CEST) Message-ID: <427CFBF3.8030903@stason.org> Date: Sat, 07 May 2005 10:33:39 -0700 From: Stas Bekman Organization: Hope, Humanized User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.6) Gecko/20050322 X-Accept-Language: en-us, en, he, ru MIME-Version: 1.0 To: Torsten Foertsch CC: dev@perl.apache.org Subject: Re: modperl and the TCP_DEFER_ACCEPT-patch for linux References: <200505061412.57881.torsten.foertsch@gmx.net> <427C6085.6010103@stason.org> <200505071914.32885.torsten.foertsch@gmx.net> In-Reply-To: <200505071914.32885.torsten.foertsch@gmx.net> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Torsten Foertsch wrote: > On Saturday 07 May 2005 08:30, Stas Bekman wrote: > >>Torsten Foertsch wrote: >> >>>Hi, >>> >>>yesterday I have patched my apache with this patch and now I have noticed >>>that testing mod_perl hangs in t/protocol/pseudo_http. The reason is >>>simple and to be expected. t/protocol/pseudo_http tests a protocol module >>>that is greeting the client with "HELO" before receiving any data. Since >>>the patch prevents accept(2) from returning before data has been received >>>from the client the connection is not accepted. Hence no piece of code >>>gets chance to send "HELO". >>> >>>Maybe it is worth to change the test so that the client must send >>>someting at first? >>> >>>I could provide a patch. >> >>What's that patch you are talking about, Torsten? > > > Sorry for not providing a link. Here it is: > http://marc.theaimsgroup.com/?l=apache-httpd-dev&m=111523765005281&w=2 Ah, thanks Torsten, I have lots of emails to catch up with. > The whole thing came from a discussion about the Timeout configuration > directive, see > http://marc.theaimsgroup.com/?l=apache-httpd-dev&m=111513459203781&w=2 > > One proposed solution was to enable BSD accept-filtering. Thus, accept(2) will > return only if a complete HTTP-request is ready to be read. For Linux a > similar mechanism exists with the TCP_DEFER_ACCEPT socket option. According > to the thread Apache 2.1 uses this option. Then a backport was suggested > resulting in the patch. Do you get the same problem when testing with httpd-2.1? I didn't try recently, was it a recent change in 2.1 too? >>This workaround doesn't sound right. A protocol handler (server) must be >>able to start the conversation first. If not, many protocols relying on >>the server's greeing (e.g. SMTP) won't work. e.g., see: >>http://www.samlogic.net/articles/smtp.htm > > > I know that it would break some protocols. It can be accepted to httpd-2.0 > only if it is configurable. I was asking whether testing mod_perl should rely > on the server's ability to send data first. It shouldn't be in Apache-2 at all, I've posted an email to httpd-dev regarding this issue. > If not, the attached patch changes slightly the protocol initialization. Now > the client should send "HELO". The server replies "Nice to meet you". No, this is wrong. The test is written to test the functionality not to have 100% pass. -- __________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:stas@stason.org http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org For additional commands, e-mail: dev-help@perl.apache.org