Giampaolo Rodola' added the comment:

Being Tulip asynchronous I think that what it needs is an utility function 
which returns *multiple* sockets as are the addresses returned by getaddrinfo() 
and also possibly even disable the IPv4/6 dual stack in order to be consistent 
across all platforms.

After the sockets are returned they can be "registered" against the event loop 
as two separate entities such as, say, ("0.0.0.0", 8000) *and* ("::", 8000).
If you think this makes sense I can contribute something like this into Tulip, 
or I can bring it up on Tulip's ml and ask for other people's opinions.

My current recipe is different in that it provides a function which bind()s on 
one socket only and tries to enable the dual stack whenever possible in order 
to support IPv4 and IPv6 with a single socket.
In this it is similar to socket.create_connection() and clearly favors blocking 
socket usages (although it can also be used in non-blocking apps) which kind of 
represents the default for the stdlib.

----------

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

Reply via email to