[issue27929] asyncio.AbstractEventLoop.sock_connect brooken for AF_BLUETOOTH

Robert Jordens report at bugs.python.org
Thu Sep 1 09:59:55 EDT 2016


New submission from Robert Jordens:

Since 3.5.2 sock_connect() tries to be smart and resolves addresses for you if they fail a socket.inet_pton() check. But inet_pton() only supports AF_INET(6) and does not work for other address families that socket otherwise supports just fine (e.g. AF_BLUETOOTH).

Before 3.5.2, in order to happily use bluetooth sockets with asyncio, you could just do:

    sock = socket.socket(family=socket.AF_BLUETOOTH, type=socket.SOCK_STREAM,
                proto=socket.BTPROTO_RFCOMM)
    sock.setblocking(False)
    addr = "00:12:34:56:78:99"
    yield from loop.sock_connect(sock, (addr, 1))

This is a regression.

----------
components: Argument Clinic
messages: 274131
nosy: Robert.Jordens, larry
priority: normal
severity: normal
status: open
title: asyncio.AbstractEventLoop.sock_connect brooken for AF_BLUETOOTH
versions: Python 3.5, Python 3.6

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue27929>
_______________________________________


More information about the Python-bugs-list mailing list