Charles-François Natali <neolo...@free.fr> added the comment:

That's because SocketListener uses SO_REUSEADDR.
It seems that, with SO_REUSEADDR, Windows allows binding to a port even though 
there's a socket already bound to the same port in the LISTEN state: this is 
wrong, the semantics of SO_REUSEADDR was intended for sockets in TIME-WAIT 
state, and Linux and BSD systems implement this properly (i.e. fail with 
EADDRINUSE when there's a socket in LISTEN state).
The problem, if we remove this flag, is that managers binding to a specific 
port will get EADDRINUSE in case of rapid restart.
Since I'm not convinced that this is really an issue, I'd suggest to close this 
as "won't fix". Another option would be to complain to Microsoft :-)

@Phill: I'm not sure I understand your problem: could you be more specific (or 
open a new issue)?

----------
nosy: +neologix, pitrou

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue8184>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to