
    iV                         d dl Z d dlZd dlmZmZ ddlmZ ddlmZm	Z	 	 dde
ded	ej                  d
eee
ef      de j                   f
dZd Zy)    N)OptionalTuple   )Resolver   )is_ipv4_addressis_ipv6_addresshostportloop
local_addrreturnc                 v  K   t        | |       d {   \  }} t        j                  |t        j                        }|j                  d       ||j	                  |       t        |       r| |ddf}n| |f}	 |j                  ||       d {    |S 7 7 # t        $ r |j                           w xY ww)N)familytypeFr   )sockaddress)	_resolve_hostsocketSOCK_STREAMsetblockingbindr	   sock_connectOSErrorclose)r
   r   r   r   r   r   r   s          W/root/searxng-venv/lib/python3.12/site-packages/python_socks/async_/asyncio/_connect.pyconnect_tcpr   	   s      'tT22LFD==V-?-?@DU		*tq!$,T7;;; K# 3 	< 

s:   B9BA&B9:B BB B9B B66B9c                    K   t        |       rt        j                  | fS t        |       rt        j                  | fS t        |      }|j                  |        d {   S 7 w)N)r   )r
   )r   r   AF_INETr	   AF_INET6r   resolve)r
   r   resolvers      r   r   r   $   sX     t~~t##t$$T"H!!t!,,,,s   AA%A#A%)N)r   asynciotypingr   r   	_resolverr   _helpersr   r	   strintAbstractEventLoopr   r        r   <module>r,      sh      "  8 -1	

 
#
# sCx)	
 ]]6-r+   