
    L}bgM                      &   d Z ddlZddlZddlZddlZddlZddlZddlZej	        
                    d          s ed          d Zej        j        Z G d dej        j                  Z G d d	ej        j                  Zej	        
                    d
          rPddlZddlZddlZej        Zej        j        j        ZddlmZmZmZ  G d de          Z G d dej                   Z!nej        j"        Z! G d dej        j#                  Z#dS )z$trio async I/O library query support    Ntrioztrio not found or too oldc                 j    | t          j        |           S t          j                                        S N)r   move_on_afterdns_asyncbackendNullContexttimeouts    d/home/e360mart.nyusoft.in/public_html/e360mart_env/lib/python3.11/site-packages/dns/_trio_backend.py_maybe_timeoutr      s.    !'*** ,,...    c                   B     e Zd Z fdZd Zd Zd Zd Zd Zd Z	 xZ
S )DatagramSocketc                 b    t                                          |j                   || _        d S r   )super__init__familysocket)selfr   	__class__s     r   r   zDatagramSocket.__init__!   s(    '''r   c                    K   t          |          5  | j                            ||           d {V cd d d            S # 1 swxY w Y   t          j                            |          Nr
   )r   r   sendtor   	exceptionTimeout)r   whatdestinationr   s       r   r   zDatagramSocket.sendto%   s      G$$ 	? 	?++D+>>>>>>>>	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	?m## $ 
 
 	
s   !A  AAc                    K   t          |          5  | j                            |           d {V cd d d            S # 1 swxY w Y   t          j                            |          r   )r   r   recvfromr   r   r   r   sizer   s      r   r    zDatagramSocket.recvfrom,         G$$ 	4 	4--d33333333	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4m##G#444    ?AAc                 <   K   | j                                          d S r   )r   closer   s    r   r&   zDatagramSocket.close1   s       r   c                 8   K   | j                                         S r   )r   getpeernamer'   s    r   r)   zDatagramSocket.getpeername4         {&&(((r   c                 8   K   | j                                         S r   )r   getsocknamer'   s    r   r,   zDatagramSocket.getsockname7   r*   r   c                    K   t           r   NotImplementedErrorr   r   s     r   getpeercertzDatagramSocket.getpeercert:   s      !!r   )__name__
__module____qualname__r   r   r    r&   r)   r,   r1   __classcell__r   s   @r   r   r       s            
 
 
5 5 5
  ) ) )) ) )" " " " " " "r   r   c                   :    e Zd Zd
dZd Zd Zd Zd Zd Zd Z	d	S )StreamSocketFc                 0    || _         || _        || _        d S r   )r   streamtls)r   r   r:   r;   s       r   r   zStreamSocket.__init__?   s    r   c                    K   t          |          5  | j                            |           d {V cd d d            S # 1 swxY w Y   t          j                            |          r   )r   r:   send_allr   r   r   )r   r   r   s      r   sendallzStreamSocket.sendallD   r#   r$   c                    K   t          |          5  | j                            |           d {V cd d d            S # 1 swxY w Y   t          j                            |          r   )r   r:   receive_somer   r   r   r!   s      r   recvzStreamSocket.recvI   s      G$$ 	8 	811$77777777	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8m##G#444r$   c                 H   K   | j                                          d {V  d S r   )r:   acloser'   s    r   r&   zStreamSocket.closeN   s2      k  """""""""""r   c                    K   | j         r#| j        j        j                                        S | j        j                                        S r   )r;   r:   transport_streamr   r)   r'   s    r   r)   zStreamSocket.getpeernameQ   A      8 	4;/6BBDDD;%11333r   c                    K   | j         r#| j        j        j                                        S | j        j                                        S r   )r;   r:   rE   r   r,   r'   s    r   r,   zStreamSocket.getsocknameW   rF   r   c                    K   | j         r_t          |          5  | j                                         d {V  d d d            n# 1 swxY w Y   | j                                        S t
          r   )r;   r   r:   do_handshaker1   r/   r0   s     r   r1   zStreamSocket.getpeercert]   s      8 	&(( 1 1k..0000000001 1 1 1 1 1 1 1 1 1 1 1 1 1 1;**,,,%%s    AA	A	N)F)
r2   r3   r4   r   r>   rA   r&   r)   r,   r1    r   r   r8   r8   >   s           
5 5 5
5 5 5
# # #4 4 44 4 4& & & & &r   r8   doh)_compute_times_expiration_for_this_attempt
_remainingc                   8     e Zd Z fdZ	 ddZ	 ddZd Z xZS )_NetworkBackendc                     t                                                       || _        || _        || _        || _        d S r   )r   r   _local_port	_resolver_bootstrap_address_family)r   resolver
local_portbootstrap_addressr   r   s        r   r   z_NetworkBackend.__init__q   s;    GG)D%DN&7D#!DLLLr   Nc           	      H  K   g }t          |          \  }}t          j                            |          r|                    |           n| j        |                    | j                   nnt          |          }| j        }	|rt          j                            |          }	| j	        
                    ||	|           d {V }
|
                                }|D ]}	 t          j                            |          }|| j        dk    r
|| j        f}nd }||f}t          d|          }t          |          }t                                          |t           j        d|||           d {V }t%          |j                  c S # t(          $ r Y w xY wt*          j        )N)r   lifetimer   g       @)rL   r   inet
is_addressappendrT   rN   rU   af_for_addressrS   resolve_name	addressesrR   rM   Backendmake_socketr   SOCK_STREAM_CoreTrioStreamr:   	ExceptionhttpcoreConnectError)r   hostportr   local_addresssocket_optionsr`   _
expirationr   answersaddressafsourcer   attempt_expirationsocks                    r   connect_tcpz_NetworkBackend.connect_tcpx   s      I*733MAzx""4(( 0  &&&&(4  !89999$Z00  D X44]CCF $ ; ;' !< ! !       $--//	$  0099B$0D4D4I4I"/1A!B!%#*D/K)Ec:)V)V&();<<G!(!6!6F.6;" "      D +4;77777    H''s   !B$F
FFc                    K   t           r   r.   )r   pathr   rk   s       r   connect_unix_socketz#_NetworkBackend.connect_unix_socket   s       &%r   c                 >   K   t          j        |           d {V  d S r   r   sleep)r   secondss     r   rz   z_NetworkBackend.sleep   s.      *W%%%%%%%%%%%r   r   )r2   r3   r4   r   rt   rw   rz   r5   r6   s   @r   rP   rP   p   s|        	" 	" 	" 	" 	" FJ"	( "	( "	( "	(J 15	& 	& 	& 	&
	& 	& 	& 	& 	& 	& 	&r   rP   c                   4     e Zd Zdddej        d fd
Z xZS )_HTTPTransportr   N)rW   rX   rV   r   c                    |dd l }|j                                        } t                      j        |i | t          ||||          | j        _        d S )Nr   )dns.asyncresolverasyncresolverResolverr   r   rP   _pool_network_backend)	r   rW   rX   rV   r   argskwargsr   r   s	           r   r   z_HTTPTransport.__init__   sk     ((((,5577EGGd-f---*9*&7+ +DJ'''r   )r2   r3   r4   r   	AF_UNSPECr   r5   r6   s   @r   r}   r}      sS         "#	 	 	 	 	 	 	 	 	 	 	r   r}   c                   :    e Zd Zd Z	 	 	 	 	 	 ddZd Zd Zd ZdS )	ra   c                     dS )Nr   rJ   r'   s    r   namezBackend.name   s    vr   r   Nc	                 Z  K   t           j                            |||          }	d }
	 |r)|	                    t          ||                     d {V  |t          j        k    rvd}t          |          5  |	                    t          ||                     d {V  d}d d d            n# 1 swxY w Y   |s t          j        	                    |          n## t          $ r |	                                  w xY w|t          j        k    rt          |	          S |t          j        k    rmt          j        |	          }
d}|rDd}	 t          j        |
||          }
n)# t          $ r |
                                 d {V   w xY wt#          ||
|          S t%          dd| z             )NFTr
   )server_hostnamezunsupported socket ztype )r   r   bind_lltuplerc   r   connectr   r   r   re   r&   
SOCK_DGRAMr   SocketStream	SSLStreamrC   r8   r/   )r   rp   socktypeprotorq   r   r   ssl_contextr   sr:   	connectedr;   s                r   rb   zBackend.make_socket   sM      Kr8U33	 3ffXfb112222222226---!	#G,, % %))H["$=$=>>>>>>>>> $I% % % % % % % % % % % % % % % ! -// ' 0     	 	 	GGIII	 v(((!!$$$+++&q))FC !^_  FF !    --//)))))))  FC000!!$6H$6$66
 
 	
s<   AC 3,B+C +B//C 2B/3%C  C9E &Fc                 >   K   t          j        |           d {V  d S r   ry   )r   intervals     r   rz   zBackend.sleep   s.      j"""""""""""r   c                     t           S r   )r}   r'   s    r   get_transport_classzBackend.get_transport_class   s    r   c                    K   t          |          5  | d {V cd d d            S # 1 swxY w Y   t          j                            |          r   )r   r   r   r   )r   	awaitabler   s      r   wait_forzBackend.wait_for   s      G$$ 	# 	#"??????	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#m## $ 
 
 	
s   '++)r   NNNNN)r2   r3   r4   r   rb   rz   r   r   rJ   r   r   ra   ra      sy           -
 -
 -
 -
^# # #  
 
 
 
 
r   ra   )$__doc__r   r   trio.socketdns._asyncbackendr   dns._featuresdns.exceptiondns.inet	_featureshaveImportErrorr   r[   low_level_address_tupler   r   r   r8   rf   httpcore._backends.triohttpxAsyncNetworkBackend_CoreAsyncNetworkBackend	_backends
TrioStreamrd   	dns.queryrL   rM   rN   rP   AsyncHTTPTransportr}   NullTransportra   rJ   r   r   <module>r      s   + *                   
}&!! 3
+1
2
22/ / / 8+
" " " " "S&5 " " "<%& %& %& %& %&3$1 %& %& %&P =e S5OOO""""LLL';(-8ORRRRRRRRRR2& 2& 2& 2& 2&2 2& 2& 2&h    1    * &4N>
 >
 >
 >
 >
c' >
 >
 >
 >
 >
r   