bpo-31245: Asyncio unix socket datagram (#3164)

This commit is contained in:
Quentin Dawans 2017-10-30 14:43:02 +01:00 committed by Yury Selivanov
parent a2314283ff
commit fe4ea9cf1e
5 changed files with 24 additions and 5 deletions

View file

@ -859,6 +859,12 @@ class BaseEventLoop(events.AbstractEventLoop):
if family == 0:
raise ValueError('unexpected address family')
addr_pairs_info = (((family, proto), (None, None)),)
elif hasattr(socket, 'AF_UNIX') and family == socket.AF_UNIX:
for addr in (local_addr, remote_addr):
if addr is not None and not isistance(addr, str):
raise TypeError('string is expected')
addr_pairs_info = (((family, proto),
(local_addr, remote_addr)), )
else:
# join address by (family, protocol)
addr_infos = collections.OrderedDict()

View file

@ -378,8 +378,8 @@ class AbstractEventLoop:
protocol_factory must be a callable returning a protocol instance.
socket family AF_INET or socket.AF_INET6 depending on host (or
family if specified), socket type SOCK_DGRAM.
socket family AF_INET, socket.AF_INET6 or socket.AF_UNIX depending on
host (or family if specified), socket type SOCK_DGRAM.
reuse_address tells the kernel to reuse a local socket in
TIME_WAIT state, without waiting for its natural timeout to