Viewing File: /opt/hc_python/lib/python3.12/site-packages/dns/__pycache__/_trio_backend.cpython-312.pyc

�

`��g!���dZddlZddlZddlZddlZddlZddlZddlZejjd�sed��d�ZejjZGd�dej j"�ZGd�d	ej j$�Zejjd
�rcddlZddlZddlZej,Zej0jj2ZddlmZmZmZGd�d
e�ZGd�dej@�Z!nej jDZ!Gd�dej jF�Z#y)z$trio async I/O library query support�N�trioztrio not found or too oldc�l�|�tj|�Stjj	�S�N)r�
move_on_after�dns�
_asyncbackend�NullContext��timeouts �@/opt/hc_python/lib/python3.12/site-packages/dns/_trio_backend.py�_maybe_timeoutr
s.�����!�!�'�*�*�� � �,�,�.�.�c�B��eZdZ�fd�Zd�Zd�Zd�Zd�Zd�Zd�Z	�xZ
S)�DatagramSocketc�d��t�|�|jtj�||_yr)�super�__init__�family�socket�
SOCK_DGRAM)�self�sock�	__class__s  �rrzDatagramSocket.__init__!s#���
������f�&7�&7�8���rc��8K�t|�5|�,|jj|��d{���cddd�S|jj||��d{���cddd�S7�:7�#1swYnxYwtj
j
|����w�Nr
)r
r�send�sendtor�	exception�Timeout)r�what�destinationrs    rrzDatagramSocket.sendto%s�����
�G�
$��"�!�[�[�-�-�d�3�3�%�
$�"�[�[�/�/��k�B�B�	%�
$�3��B��	%�
$��
�m�m�#�#��$�
�	
�sH�B�!A.�A*�A.�
B�A.�A,�A.� 
B�*A.�,A.�.A7�3'Bc���K�t|�5|jj|��d{���cddd�S7�
#1swYnxYwtjj|����wr)r
r�recvfromrrr�r�sizers   rr#zDatagramSocket.recvfrom/�P����
�G�
$����-�-�d�3�3�%�
$�3��%�
$���m�m�#�#�G�#�4�4��%�A)�=�;�=�
A)�=�A�'A)c��@K�|jj�y�wr)r�close�rs rr)zDatagramSocket.close4s����������s�c��>K�|jj�S�wr)r�getpeernamer*s rr,zDatagramSocket.getpeername7������{�{�&�&�(�(���c��>K�|jj�S�wr)r�getsocknamer*s rr0zDatagramSocket.getsockname:r-r.c��K�t��wr��NotImplementedError�rrs  r�getpeercertzDatagramSocket.getpeercert=s����!�!���	)�__name__�
__module__�__qualname__rrr#r)r,r0r5�
__classcell__�rs@rrr s&����
�5�
�)�)�"rrc�D��eZdZd�fd�	Zd�Zd�Zd�Zd�Zd�Zd�Z	�xZ
S)	�StreamSocketc�^��t�|�|tj�||_||_yr)rrr�SOCK_STREAM�stream�tls)rrr@rArs    �rrzStreamSocket.__init__Bs&���
�����!3�!3�4������rc���K�t|�5|jj|��d{���cddd�S7�
#1swYnxYwtjj|����wr)r
r@�send_allrrr)rr rs   r�sendallzStreamSocket.sendallGr&r'c���K�t|�5|jj|��d{���cddd�S7�
#1swYnxYwtjj|����wr)r
r@�receive_somerrrr$s   r�recvzStreamSocket.recvLsP����
�G�
$����1�1�$�7�7�%�
$�7��%�
$���m�m�#�#�G�#�4�4�r'c��TK�|jj��d{���y7��wr)r@�acloser*s rr)zStreamSocket.closeQs�����k�k� � �"�"�"�s�(�&�(c���K�|jr.|jjjj	�S|jjj	�S�wr)rAr@�transport_streamrr,r*s rr,zStreamSocket.getpeernameT�E�����8�8��;�;�/�/�6�6�B�B�D�D��;�;�%�%�1�1�3�3���AA!c���K�|jr.|jjjj	�S|jjj	�S�wr)rAr@rKrr0r*s rr0zStreamSocket.getsocknameZrLrMc���K�|jrPt|�5|jj��d{���ddd�|jj	�St
�7�,#1swY�+xYw�wr)rAr
r@�do_handshaker5r3r4s  rr5zStreamSocket.getpeercert`sW�����8�8���(��k�k�.�.�0�0�0�)��;�;�*�*�,�,�%�%�1��)�(�s+�A3�A'�A%�A'�(A3�%A'�'A0�,A3)F)r7r8r9rrDrGr)r,r0r5r:r;s@rr=r=As&����
5�
5�
#�4�4�&rr=�doh)�_compute_times�_expiration_for_this_attempt�
_remainingc�8��eZdZ�fd�Z	dd�Z	dd�Zd�Z�xZS)�_NetworkBackendc�Z��t�|��||_||_||_||_yr)rr�_local_port�	_resolver�_bootstrap_address�_family)r�resolver�
local_port�bootstrap_addressrrs     �rrz_NetworkBackend.__init__ts,����G���)�D��%�D�N�&7�D�#�!�D�Lrc	��ZK�g}t|�\}}tjj|�r|j	|�n�|j
�|j	|j
�nnt
|�}|j}	|rtjj|�}	|jj||	|���d{���}
|
j�}|D]�}	tjj|�}|�|jdk7r||jf}
nd}
||f}td|�}t
|�}t�j|t j"d|
||��d{���}t%|j&�cSt*j,�7��7�.#t($rY��wxYw�w)N)r�lifetimerg@)rRr�inet�
is_address�appendrZrTr[�af_for_addressrY�resolve_name�	addressesrXrS�Backend�make_socketrr?�_CoreTrioStreamr@�	Exception�httpcore�ConnectError)r�host�portr�
local_address�socket_optionsrf�_�
expirationr�answers�address�af�sourcer!�attempt_expirationrs                 r�connect_tcpz_NetworkBackend.connect_tcp{s������I�*�7�3�M�A�z��x�x�"�"�4�(�� � ��&��(�(�4�� � ��!8�!8�9�$�Z�0������ � �X�X�4�4�]�C�F� $��� ;� ;���'�!<�!���$�-�-�/�	�$������0�0��9�B�$�0�D�4D�4D��4I�"/��1A�1A�!B��!%��#*�D�/�K�)E�c�:�)V�&�(�);�<�G�!(��!6�!6��F�.�.��6�;��"��D�+�4�;�;�7�7�%� �'�'�'�)����!����sI�CF+�F�F+� BF�+F�,F�F+�F�	F(�%F+�'F(�(F+c��K�t��wrr2)r�pathrrps    r�connect_unix_socketz#_NetworkBackend.connect_unix_socket�s����&�%�r6c��JK�tj|��d{���y7��wr�r�sleep)r�secondss  rr~z_NetworkBackend.sleep�s�����*�*�W�%�%�%���#�!�#r)r7r8r9rrxr{r~r:r;s@rrVrVss$���	"�FJ�"	(�J15�	&�
	&rrVc�>��eZdZdddejd��fd�
Z�xZS)�_HTTPTransportrN)r]r^r\rc���|� |�ddl}|jj�}t�|�|i|��t||||�|j_y)Nr)�dns.asyncresolver�
asyncresolver�ResolverrrrV�_pool�_network_backend)	rr]r^r\r�args�kwargsrrs	        �rrz_HTTPTransport.__init__�sU�����$5�$=�(��,�,�5�5�7���G��d�-�f�-�*9��*�&7��+�D�J�J�'r)r7r8r9r�	AF_UNSPECrr:r;s@rr�r��s!����"���#�#�
	�	rr�c�8�eZdZd�Z						dd�Zd�Zd�Zd�Zy)rgc��y)Nr�r*s r�namezBackend.name�s��rNc	��0K�tjj|||�}	d}
	|r#|	jt||���d{���|tjk(s|�]d}t|�5|	j
t||���d{���d}ddd�|s tjj|���|tjk(rt|	�S|tjk(rAtj|	�}
d}|rd}	tj|
||��}
t#||
|�St%dd|��z��7��7��#1swY��xYw#t$r|	j��wxYw#t$r|
j!��d{���7�wxYw�w)NFTr
)�server_hostnamezunsupported socket ztype )rr�bind�_lltupler?r
�connectrrrrjr)rr�SocketStream�	SSLStreamrIr=r3)
rru�socktype�protorvr!r�ssl_contextr��sr@�	connectedrAs
             rrhzBackend.make_socket�s�����
�K�K���r�8�U�3����	���f�f�X�f�b�1�2�2�2��6�-�-�-��1H�!�	�#�G�,��)�)�H�[�"�$=�>�>�>� $�I�-�!��-�-�/�/� '�0����v�(�(�(�!�!�$�$�
��+�+�
+��&�&�q�)�F��C�����!�^�^���_��F� ��F�C�0�0�!�!�e�H�:�$6�6�
�	
�93��?��-�,���	�
�G�G�I��	��!�� �-�-�/�)�)���s}�$F� E�E�&E�.E�
E�E�*E�>AF�E/�#F�E�E�E�
E�E,�,F�/F�F�F�Fc��JK�tj|��d{���y7��wrr})r�intervals  rr~z
Backend.sleep�s�����j�j��"�"�"�r�c��tSr)r�r*s r�get_transport_classzBackend.get_transport_class�s���rc��K�t|�5|�d{���cddd�S7�
#1swYnxYwtjj|����wr)r
rrr)r�	awaitablers   r�wait_forzBackend.wait_for�sG����
�G�
$�"�?�%�
$�"��%�
$���m�m�#�#��$�
�	
�s#�A�$�"�$�
A�$�-�'A)rNNNNN)r7r8r9r�rhr~r�r�r�rrrgrg�s0���������-
�^#��
rrg)$�__doc__rr�trio.socket�dns._asyncbackendr�
dns._features�
dns.exception�dns.inet�	_features�have�ImportErrorr
ra�low_level_address_tupler�rrr=rk�httpcore._backends.trio�httpx�AsyncNetworkBackend�_CoreAsyncNetworkBackend�	_backends�
TrioStreamri�	dns.queryrRrSrTrV�AsyncHTTPTransportr��
NullTransportrgr�rr�<module>r�s��+�
�������
�}�}���&�!�
�1�
2�2�/��8�8�+�+��
"�S�&�&�5�5�"�B%&�3�$�$�1�1�%&�P�=�=���e���"��'�;�;���(�(�-�-�8�8�O�R�R�2&�2�2&�h��1�1��*�&�&�4�4�N�>
�c���'�'�>
r
Back to Directory File Manager