HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/test/support/__pycache__/socket_helper.cpython-311.opt-2.pyc
�

��Vcb.���ddlZddlZddlZddlZddlZddlmZddlmZdZdZ	dZ
ejZej
ejfd	�Zefd
�Zd�Zd�Ze��Zdad
�Zd�Ze��Zejedd�d���ZdS)�N�)�support�)�warnings_helper�	localhostz	127.0.0.1z::1c��	tj||��5}t|��}ddd��n#1swxYwY~|S)N)�socket�	bind_port)�family�socktype�tempsock�ports    �.D:\Python311\Lib\test\support\socket_helper.py�find_unused_portrs���5�n
��v�x�	(�	(�#�H���"�"��#�#�#�#�#�#�#�#�#�#�#����#�#�#�#���Ks�3�7�7c���	|jtjk�r|jtjk�rttd��rB|�tjtj��dkrtj
d���ttd��rT	|�tjtj��dkrtj
d���n#t$rYnwxYwttd��r+|�
tjtjd��|�|df��|���d}|S)N�SO_REUSEADDRrzHtests should never set the SO_REUSEADDR socket option on TCP/IP sockets!�SO_REUSEPORTzHtests should never set the SO_REUSEPORT socket option on TCP/IP sockets!�SO_EXCLUSIVEADDRUSEr)rr	�AF_INET�type�SOCK_STREAM�hasattr�
getsockopt�
SOL_SOCKETrr�
TestFailedr�OSError�
setsockoptr�bind�getsockname)�sock�hostrs   rr
r
Os_����{�f�n�$�N���f�6H�)H�N��6�>�*�*�	<����v�0�&�2E�F�F�!�K�
<��(�*;�<�<�<��6�>�*�*�
	�	
��?�?�6�#4�f�6I�J�J�a�O�@�!�,�.?�@�@�@�@���
�
�
���	
����
�6�0�1�1�	N��O�O�F�-�v�/I�1�M�M�M��I�I�t�Q�i���������a� �D��Ks�AC�
C+�*C+c��		|�|��dS#t$r)|���tjd���wxYw)Nzcannot bind AF_UNIX sockets)r�PermissionError�close�unittest�SkipTest)r �addrs  r�bind_unix_socketr(vsW��L�?��	�	�$��������?�?�?��
�
������ =�>�>�>�?���s	��3A
c�n�	tjr�d}	tjtjtj��}|�t
df��	|r|���dSdS#t$rYnwxYw	|r|���n#|r|���wwxYwdS)NrTF)r	�has_ipv6�AF_INET6rr�HOSTv6r$r)r s r�_is_ipv6_enabledr-s���5�
��
���	��=���&�2D�E�E�D��I�I�v�q�k�"�"�"���
��
�
������
�
���	�	�	��D�	������
��
�
�������
��
�
�����
�����5s$�AA1�1
A>�;B�=A>�>B�B2c��	ttd��stjd��|��St��ddlm}m}|dz}tjtj��5}	|�	|��dan#t$r}|aYd}~nd}~wwxYw||��n#||��wxYw	ddd��n#1swxYwYtr'dtz}tj|��|��S|S)N�AF_UNIXzNo UNIX Socketsr)�TESTFN�unlink�can_bind_unix_socketFz%Requires a functional unix bind(): %s)rr	r%�skip�_bind_nix_socket_error�	os_helperr0r1r/rr)�testr0r1�pathr �e�msgs       r�skip_unless_bind_unix_socketr:�sk��M��6�9�%�%�6�/�x�}�.�/�/��5�5�5��
�-�-�-�-�-�-�-�-��.�.��
�]�6�>�
*�
*�	�d�
��	�	�$����).�&�&���
+�
+�
+�)*�&�&�&�&�&�&�����
+������t��������t���������	�	�	�	�	�	�	�	�	�	�	����	�	�	�	���5�8N�N��!�x�}�S�!�!�$�'�'�'��sN�&C�(B�?B%�
B�
B�B%�B�B%�C�%
B2�2C�C�	Cc��	tjg}ttd��r|�tj��ttd��r|�tj��ttd��r|�tj��ts|�tj��|S)N�ENETUNREACH�
EADDRNOTAVAIL�EHOSTUNREACH)	�errno�ECONNREFUSEDr�appendr<r=r>�IPV6_ENABLED�EAFNOSUPPORT)�errorss r�get_socket_conn_refused_errsrE�s����� �
!�F��u�m�$�$�)��
�
�e�'�(�(�(��u�o�&�&�+�	�
�
�e�)�*�*�*��u�n�%�%�*��
�
�e�(�)�)�)��*��
�
�e�(�)�)�)��M��)�timeout�errnosc#�p�
���
K�	tjd��}ddl�
|turtj}gd�}gd�}t	jd|z���|�
g��
sd�|D���
d�|D����
���
fd�}tj��}	|�tj	|��dV�n�#|j
$rA}tjr-tj
��jdd	z���|�d}~wt $r�}	|j}	t#|	��dkr$t%|	dt ��r	|	d}n8t#|	��dkr$t%|	dt ��r	|	d}nn�w||���d}~wwxYw	tj	|��dS#tj	|��wxYw)
N�nntplibr))r@�o)�
ECONNRESET�h)r>�q)r<�e)�	ETIMEDOUT�n)r=�c))�	EAI_AGAIN���)�EAI_FAIL���)�
EAI_NONAME���)�
EAI_NODATA���)�
WSANO_DATAi�*zResource %r is not availablec�@�g|]\}}tt||����SrG)�getattrr?��.0�name�nums   r�
<listcomp>z&transient_internet.<locals>.<listcomp>�s8��>�>�>�*��c�#�5�$��4�4�>�>�>rFc�@�g|]\}}tt||����SrG)r^r	r_s   rrcz&transient_internet.<locals>.<listcomp>�s8��=�=�=�%�4���f�d�C�0�0�=�=�=rFc����t|dd��}t|t��s�t|tj��r|�vsgt|�jj��rd|jcxkrdks;nt|�jj��rd|j	vsd|j	vs
d|j	vs|�vr<tjs-tj
��jddz���|�dS)	Nr?i�iW�ConnectionRefusedError�TimeoutError�EOFErrorr�
)r^�
isinstancergr	�gaierror�error�	HTTPError�code�URLError�reasonr�verbose�sys�stderr�write�args)�err�n�captured_errnos�denied�
gai_errnos�urllibs  ����r�filter_errorz(transient_internet.<locals>.filter_error�s-����C��$�'�'���s�L�)�)�	"�
��V�_�
-�
-�	"�23�z�/�	"�
��V�\�3�
4�
4�	"��C�H�	"�	"�	"�	"�!$�	"�	"�	"�	"���V�\�2�
3�
3�		"�
,�s�z�9�	"�"�S�Z�/�
	"����+�	"�
�� �	"��?�
8��
� � ���Q��$�!6�7�7�7��c�!�	"�	"rFriTrr)r�import_deprecated�urllib.error�_NOT_SETr�INTERNET_TIMEOUT�ResourceDeniedr	�getdefaulttimeout�setdefaulttimeout�NNTPTemporaryErrorrqrrrsrtrur�lenrj)�
resource_namerHrIrK�default_errnos�default_gai_errnosr|�old_timeoutrv�arxryrzr{s          @@@@r�transient_internetr��sZ��������G��/�	�:�:�G������(��+��*��	�	�	�N������
#�$B�]�$R�
S�
S�F��O��J��=�>�>�.<�>�>�>��=�=�);�=�=�=�
�
"�
"�
"�
"�
"�
"�
"�
"��*�,�,�K�.��	.��$�W�-�-�-�
�������%�����?�	4��J���V�[��^�d�2�3�3�3��#����������
	���A��1�v�v��{�
�z�!�A�$��8�8�
���d����Q���1��
��A�a�D�'�!:�!:�
���d����
	�	��S����
���������	�0	� ��-�-�-�-�-��� ��-�-�-�-���s7�B)�(F�)
F�3<C/�/
F�<BF�F�F�F5)�
contextlibr?r	r%rr�rr�HOST�HOSTv4r,�is_wasi�has_gethostnamerrrr
r(r-rBr4r:rE�objectr�contextmanagerr�rGrFr�<module>r�sM����������
�
�
�
�����
�
�
�
���������������	��	���o�%��#�N�V�5G�;�;�;�;�z�%�%�%�%�N?�?�?�
�
�
� ��!�!�������.���*�6�8�8����19�"�O.�O.�O.�O.���O.�O.�O.rF