Return-Path: Delivered-To: apmail-apr-dev-archive@www.apache.org Received: (qmail 93034 invoked from network); 24 Jun 2005 23:42:55 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 24 Jun 2005 23:42:55 -0000 Received: (qmail 63613 invoked by uid 500); 24 Jun 2005 23:42:55 -0000 Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 63400 invoked by uid 500); 24 Jun 2005 23:42:54 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Id: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 63387 invoked by uid 99); 24 Jun 2005 23:42:53 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 24 Jun 2005 16:42:53 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=RCVD_BY_IP X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of trawick@gmail.com designates 64.233.162.203 as permitted sender) Received: from [64.233.162.203] (HELO zproxy.gmail.com) (64.233.162.203) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 24 Jun 2005 16:42:54 -0700 Received: by zproxy.gmail.com with SMTP id x7so1900nzc for ; Fri, 24 Jun 2005 16:42:50 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=e2AX3hJxxuBxvKXzy5y3NoAw9yEdQ40yvGHPSLCrlZiLuerIM2aDIrc2PdpgPlHZvGZ/s86JwuCWqR6iuAdR/tHP5+HqdWZ+KUPePBDQjTCNoR+EQrIMSG8K/DEbzyzGdZ1DSXeUmMcqCAlnHECbNeBHl0KhYnV4Cq2BC/EdNPY= Received: by 10.36.18.8 with SMTP id 8mr2822749nzr; Fri, 24 Jun 2005 16:42:50 -0700 (PDT) Received: by 10.36.74.10 with HTTP; Fri, 24 Jun 2005 16:42:50 -0700 (PDT) Message-ID: Date: Fri, 24 Jun 2005 19:42:50 -0400 From: Jeff Trawick Reply-To: Jeff Trawick To: dev@apr.apache.org Subject: Re: Rethinking apr_socket_timeout_set In-Reply-To: <42BC98C9.1020604@force-elite.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <42BC8C8C.4030203@force-elite.com> <42BC98C9.1020604@force-elite.com> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N On 6/24/05, Paul Querna wrote: > Jeff Trawick wrote: >=20 > >On 6/24/05, Paul Querna wrote: > > > >>I would like to look at extending the timeout API, creating a new > >>version that leaves a socket in its original state (blocking or > >>non-blocking), but still implements the Timeouts. The SO_SNDTIMEO and > >>O_RCVTIMEO socketopts can do exactly this. For platforms that do not > >>support them, we can emulate it but toggling to non-blocking, and using > >>apr_wait_for_io_or_timeout, just like we do now, and then reseting the > >>socket to its original state. > >> > >> > > > >Why do you need a different timeout API? It either works or it > >doesn't. Provide an implementation of send*/receive*/sockopt APIs > >that can use SO_SNDTIMEO/O_RCVTIMEO, and enable it carefully. > > > > > > > Because some applications might rely upon the API setting a socket to > blocking or non-blocking based on the timeout. They wouldn't work on Windows anyway, FWIW. > It is documented to behave in this way,=20 Where?