support various address families in uasyncio open_connection #7563
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
rudimentary support for various address families
only tested on esp32 and unix ports
encountered trouble using
open_connectionin my codebase when adding support for the unix port. after light investigation i found that the unix port was returning ipv6 addresses forsocket.getaddrinfo()in some cases (notably www.google.com) which would causeopen_connectionto raiseOSError 47(MP_EAFNOSUPPORT).using the
familytuple element returned bysocket.getaddrinfoseems like it ought to be a portable way to adapt to the proper address family when creating a socket.i've tried this out successfully on unix and esp32 ports, but clearly a more rigorous examination is needed. furthermore this is most likely just a fraction of the work needed to be done to claim that uasyncio truly supports ipv6
related issues:
#3683