%PDF- %PDF-
| Direktori : /lib/python3/dist-packages/dns/__pycache__/ |
| Current File : //lib/python3/dist-packages/dns/__pycache__/asyncquery.cpython-312.pyc |
�
5��e�h � ! �� � d Z ddlZddlZddlZddlZddlZddlmZmZm Z m
Z
mZ ddlZ
ddlZ
ddlZ
ddlZ
ddlZ
ddlZ
ddlZ
ddlZ
ddlZ
ddlZ
ddlmZ ddlmZmZmZmZmZmZm Z m!Z!m"Z"m#Z# e"rddl$Z$e
jJ jL Z'd� Z(d>d�Z) d>de
jT jV d ee
jX jZ e.f d
ede e/ de
e0e/f f
d
�Z1 d?de
jT jV d
e e de e/ de2de2de ee
jf jh e
jj jl f de e. de2de2de2de e
jX jZ defd�Z7 d@de
jX jZ de8de e/ de0de e8 de0de2de2de2de2de e
jT jV de e
jT jr de2de
jX jZ fd �Z: dAde
jX jZ de8de e/ de0de e8 de0de2de2de2d!e e
jT jV d"e e
jT jv de e
jT jr de2de
e
jX jZ e2f fd#�Z< d>de
jT jv d ee
jX jZ e.f de e/ de
e0e/f fd$�Z=d%� Z> dBde
jT jv de e/ de2de ee
jf jh e
jj jl f de e. de2de
e
jX jZ e/f fd&�Z? dCde
jX jZ de8de e/ de0de e8 de0de2de2de e
jT jv de e
jT jr de
jX jZ fd'�Z@ dDde
jX jZ de8de e/ de0de e8 de0de2de2de e
jT jv de e
jT jr d)e e#j� d*e e8 d+ee2e8f de
jX jZ fd,�ZBdd-dddddd.d(d(ddej� f
de
jX jZ de8de e/ de0de e8 de0de2de2d/e d0 d1e8d2e2d+ee2e8f d3e e8 d4e d5 d6e e0 de
jX jZ f d7�ZDddddddej� dfde8d8e
j� j� de e
jX jZ de0de e/ d9e e/ de e8 de0d:ede e
jT jr ddfd;�ZH dEde
jX jZ de8de e/ de0de e8 de0de2de2d<e e
j� j� d+ee2e8f de e
jT jr d*e e8 de
jX jZ fd=�ZIy)FzTalk to a DNS server.� N)�Any�Dict�Optional�Tuple�Union)�NullContext)
�BadResponse�NoDOH�NoDOQ�UDPMode�_compute_times�_make_dot_ssl_context�_matches_destination�
_remaining�have_doh�sslc � � |s|rF|�@| t j k( rd}||fS | t j k( rd}||fS t d| � �� �||fS y )Nz0.0.0.0z::zunknown address family )�socket�AF_INET�AF_INET6�NotImplementedError)�af�address�ports �0/usr/lib/python3/dist-packages/dns/asyncquery.py�
_source_tupler : sl � � �$��?��V�^�^�#�#��
���� �v���&��� ���� *�,C�B�4�*H�I�I������ c �R � | �%|st j � }t | |z
d� S y )Nr )�time�max)�
expiration�nows r �_timeoutr# J s+ � �����)�)�+�C��:��#�Q�'�'�r �sock�what�destinationr! �returnc � �� K � t |t j j � r|j � }t j
� }| j
||t ||� � � d{ ��� }||fS 7 ��w)a� Send a DNS message to the specified UDP socket.
*sock*, a ``dns.asyncbackend.DatagramSocket``.
*what*, a ``bytes`` or ``dns.message.Message``, the message to send.
*destination*, a destination tuple appropriate for the address family
of the socket, specifying where to send the query.
*expiration*, a ``float`` or ``None``, the absolute time at which
a timeout exception should be raised. If ``None``, no timeout will
occur. The expiration value is meaningless for the asyncio backend, as
asyncio's transport sendto() never blocks.
Returns an ``(int, float)`` tuple of bytes sent and the sent time.
N)�
isinstance�dns�message�Message�to_wirer �sendtor# )r$ r% r&