Steve Holden <[EMAIL PROTECTED]> wrote:
> Jim Fulton wrote:
> > Yesterday, I needed to make a web request in a program (actually a test)
> > that could block indefinately, so I needed to set a socket timeout.
> > Unfortunately, AFAICT none of urllib, urllib2, httplib provide options to 
> > set
> > the timeout on the sockets they use.  I ended up having to roll my own
> > code to make the request.
[...]
> That's a very good idea. At present the only option one has is to set a 
> global socket.defaulttimout() or somehow monkey-patch the modules you 
> want to use, and neither of those options are entirely satisfactory.
> 
> Basically any method that can create a new TCP connection should acquire 
> an optional timeout=None parameter, right?

Yes.  

It might also be nice if the modules that rely on blocking mode being set on
sockets (basically anything using socket.ssl()) actually explicitly set that
first.  Right now, if you do socket.setdefaulttimeout() to a non-None value
and then try to use anything that does SSL (poplib, imaplib), the connections
will quickly die.

Charles
-- 
-----------------------------------------------------------------------
Charles Cazabon                           <[EMAIL PROTECTED]>
GPL'ed software available at:               http://pyropus.ca/software/
-----------------------------------------------------------------------
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to