[Python-Dev] socket timeouts fail w/ makefile()
Guido van Rossum
guido@python.org
Thu, 20 Mar 2003 19:57:34 -0500
> I discovered much to my chagrin today that the socket module's new timeout
> capability doesn't play well with file objects as returned by a socket's
> makefile method.
Can you explain better how it doesn't work?
> Tim O'Malley's timeoutsocket module avoids this problem by
> implementing a simple file-like object directly on top of the socket
> without calling makefile(). Is there some reason this approach
> wasn't adopted when adding timeouts to the socket module?
I guess nobody thought of this so far.
> I would think the greatest use of timeouts would be using
> higher-level line-oriented modules like urllib and ftplib. In
> addition, since makefile() isn't always available, it seems
> worthwhile to implement something in socket.py, thus making
> makefile() universally available.
Um, when is makefile() not available? There's code for Windows that
emulates it, returning a file-like object. Maybe that code should be
enabled universally rather than only on Windows...
> I filed a bug report about this issue earlier today in case people
> are interested:
>
> http://www.python.org/sf/707074
I'm interested, but have no time... :-(
--Guido van Rossum (home page: http://www.python.org/~guido/)