File: //lib/python3/dist-packages/twisted/internet/test/__pycache__/test_udp.cpython-38.pyc
U
W[�B � @ sb d Z ddlmZmZ eZddlZddlmZ ddl m
Z
ddlmZ ddl
mZmZ ddlmZ dd lmZmZ dd
lmZmZmZmZ ddlmZmZ ddlmZ dd
lm Z m!Z! ddl"m#Z#m$Z$ ddl%m&Z&m'Z' ddl(m)Z) dd� Z*e*� Z+dd� Z,G dd� de �Z-G dd� de.�Z/G dd� dee/e-�Z0G dd� dee/e-�Z1e2� �3e0�4� � e2� �3e1�4� � dS )zU
Tests for implementations of L{IReactorUDP} and the UDP parts of
L{IReactorSocket}.
� )�division�absolute_importN)�implementer)�verifyObject)�context)�ILogContext�err)�ReactorBuilder)�Deferred�
maybeDeferred)�ILoggingContext�IListeningPort�IReactorUDP�IReactorSocket)�IPv4Address�IPv6Address)�DatagramProtocol)�LogObserverMixin�findFreePort)�defer�error)�Server�
GoodClient)�SkipTestc C sN d} d}zt � t j�} | �d� d}W n t jk
r< Y nX | rJ| �� |S )z5 Returns True if the system can bind an IPv6 address.NF)�::1r T)�socket�AF_INET6�bindr �close)ZsockZhas_ipv6� r �@/usr/lib/python3/dist-packages/twisted/internet/test/test_udp.py� _has_ipv6"