This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author jaraco
Recipients jaraco
Date 2015-11-19.13:32:53
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1447939973.83.0.965937708444.issue25667@psf.upfronthosting.co.za>
In-reply-to
Content
When binding to a socket for creating a service, the socket API provides a mechanism for selecting only IPv4 or IPv6, but the simple operation of binding to all interfaces in a dual-stack environment is not easy, as is revealed in issue20215 and issue24209, but also in third-party packages. I ran into this during the implementation of aiosmtpd (https://gitlab.com/python-smtpd-hackers/aiosmtpd). As a long time maintainer of CherryPy, I've enjoyed the [dual stack support](https://bitbucket.org/cherrypy/cherrypy/src/536a9cb66e91de92502e766b2b0cf53d1cb5cb4a/cherrypy/wsgiserver/wsgiserver2.py?at=default&fileviewer=file-view-default#wsgiserver2.py-2007:2020) there.

I propose the Python stdlib provide a routine to facilitate this need more generally, and then invoke that implementation to address these other use-cases.

As it is a new feature, a backports package should be created to supply the same functionality for older Pythons.

Would this effort require a PEP? Is there a good place for such a routine (maybe socketserver)? Any other thoughts?
History
Date User Action Args
2015-11-19 13:32:53jaracosetrecipients: + jaraco
2015-11-19 13:32:53jaracosetmessageid: <1447939973.83.0.965937708444.issue25667@psf.upfronthosting.co.za>
2015-11-19 13:32:53jaracolinkissue25667 messages
2015-11-19 13:32:53jaracocreate