$15 GRAYBYTE WORDPRESS FILE MANAGER $59

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 172.67.162.162 | ADMIN IP 216.73.216.174
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/opt/hc_python/lib/python3.12/site-packages/urllib3/util/__pycache__/

HOME
Current File : /opt/hc_python/lib/python3.12/site-packages/urllib3/util/__pycache__//ssltransport.cpython-312.pyc
�

I��g�"����ddlmZddlZddlZddlZddlZddlmZejrddl	m
Z
ddlmZm
Z
ejeefZej$d�Zd	ZGd
�d�Zy)�)�annotationsN�)�ProxySchemeUnsupported)�Self�)�_TYPE_PEER_CERT_RET�_TYPE_PEER_CERT_RET_DICT�_ReturnValuei@c�"�eZdZdZed!d��Z		d"									d#d�Zd$d�Zd%d�Zd&d�Z	d'd(d�Z
d)d*d	�Z		d+							d,d
�Zd-d.d�Z
d-d/d�Z	d0dddd
�											d1d�Zd2d�Zd2d�Zej&	d3			d4d��Zej&d5d��Zd6d7d�Zd8d�Zd9d�Zd8d�Zd:d�Zd8d�Zd;d�Zd<d�Zd2d�Zd0d=d�Zej&d>d��Zej&d?d��Zej&								d@d��Z		dA							dBd �Zy)C�SSLTransportaL
    The SSLTransport wraps an existing socket and establishes an SSL connection.

    Contrary to Python's implementation of SSLSocket, it allows you to chain
    multiple TLS connections together. It's particularly useful if you need to
    implement TLS within TLS.

    The class supports most of the socket API operations.
    c�2�t|d�std��y)z�
        Raises a ProxySchemeUnsupported if the provided ssl_context can't be used
        for TLS in TLS.

        The only requirement is that the ssl_context provides the 'wrap_bio'
        methods.
        �wrap_biozXTLS in TLS requires SSLContext.wrap_bio() which isn't available on non-native SSLContextN)�hasattrr)�ssl_contexts �H/opt/hc_python/lib/python3.12/site-packages/urllib3/util/ssltransport.py�$_validate_ssl_context_for_tls_in_tlsz1SSLTransport._validate_ssl_context_for_tls_in_tls!s%���{�J�/�(�5��
�0�Nc�(�tj�|_tj�|_||_||_|j
|j|j|��|_|j|jj�y)zV
        Create an SSLTransport around socket using the provided ssl_context.
        )�server_hostnameN)
�ssl�	MemoryBIO�incoming�outgoing�suppress_ragged_eofs�socketr�sslobj�_ssl_io_loop�do_handshake)�selfrrrrs     r�__init__zSSLTransport.__init__1sm���
�
���
��
�
���
�$8��!����!�*�*��M�M�4�=�=�/�+�
���
	
���$�+�+�2�2�3rc��|S�N��rs r�	__enter__zSSLTransport.__enter__Hs���rc�$�|j�yr")�close)r�_s  r�__exit__zSSLTransport.__exit__Ks���
�
�rc�6�|jj�Sr")r�filenor$s rr+zSSLTransport.filenoN����{�{�!�!�#�#rc�&�|j||�Sr")�_wrap_ssl_read)r�len�buffers   r�readzSSLTransport.readQs���"�"�3��/�/rc�D�|dk7rtd��|j|�S)Nrz+non-zero flags not allowed in calls to recv)�
ValueErrorr.)r�buflen�flagss   r�recvzSSLTransport.recvTs&���A�:��J�K�K��"�"�6�*�*rc�`�|dk7rtd��|�t|�}|j||�S)Nrz0non-zero flags not allowed in calls to recv_into)r3r/r1)rr0�nbytesr5s    r�	recv_intozSSLTransport.recv_intoYs6���A�:��O�P�P��>���[�F��y�y���(�(rc��|dk7rtd��d}t|�5}|jd�5}t|�}||kr|j	||d�}||z
}||kr�ddd�ddd�y#1swY�xYw#1swYyxYw)Nrz.non-zero flags not allowed in calls to sendall�B)r3�
memoryview�castr/�send)r�datar5�count�view�	byte_view�amount�vs        r�sendallzSSLTransport.sendalles~���A�:��M�N�N���
��
��t�y�y��~����^�F��&�.��I�I�i���/�0����
���&�.�(6�
�
�~�~��
�
�s"�A=�/A1� A=�1A:	�6A=�=Bc�n�|dk7rtd��|j|jj|�S)Nrz+non-zero flags not allowed in calls to send)r3rr�write)rr?r5s   rr>zSSLTransport.sendos2���A�:��J�K�K�� � ����!2�!2�D�9�9r)�encoding�errors�newlinec�:�t|�hd�kstd|�d���d|v}d|vxs|}|s|sJ�d|v}d}	|r|	dz
}	|r|	dz
}	tj||	�}
|jxjdz
c_|�d	}|d
krt
j}|d
k(r|std��|
S|r|rtj|
|
|�}n3|rtj|
|�}n|sJ�tj|
|�}|r|Stj||||�}||_|S)a
        Python's httpclient uses makefile and buffered io when reading HTTP
        messages and we need to support it.

        This is unfortunately a copy and paste of socket.py makefile with small
        changes to point to the socket directly.
        >�b�r�wz
invalid mode z (only r, w, b allowed)rNrMrL�r���rz!unbuffered streams must be binary)�setr3r�SocketIO�_io_refs�io�DEFAULT_BUFFER_SIZE�BufferedRWPair�BufferedReader�BufferedWriter�
TextIOWrapper�mode)
rrZ�	bufferingrHrIrJ�writing�reading�binary�rawmode�rawr0�texts
             r�makefilezSSLTransport.makefilets=�� �4�y�O�+��}�T�H�4K�L�M�M���+����+�,�W����'�!�!���������s�N�G���s�N�G��o�o�d�G�,��������!�����I��q�=��.�.�I���>�� �!D�E�E��J��w��&�&�s�C��;�F�
��&�&�s�I�6�F��N�7��&�&�s�I�6�F���M������&�'�B����	��rc�N�|j|jj�yr")rr�unwrapr$s rrdzSSLTransport.unwrap�s�����$�+�+�,�,�-rc�8�|jj�yr")rr'r$s rr'zSSLTransport.close�s�������rc��yr"r#�r�binary_forms  r�getpeercertzSSLTransport.getpeercert�s��+.rc��yr"r#rgs  rrizSSLTransport.getpeercert�s��NQrc�8�|jj|�Sr")rrirgs  rrizSSLTransport.getpeercert�s���{�{�&�&�{�3�3rc�6�|jj�Sr")r�versionr$s rrmzSSLTransport.version�s���{�{�"�"�$�$rc�6�|jj�Sr")r�cipherr$s rrozSSLTransport.cipher�r,rc�6�|jj�Sr")r�selected_alpn_protocolr$s rrqz#SSLTransport.selected_alpn_protocol�s���{�{�1�1�3�3rc�6�|jj�Sr")r�shared_ciphersr$s rrszSSLTransport.shared_ciphers�s���{�{�)�)�+�+rc�6�|jj�Sr")r�compressionr$s rruzSSLTransport.compression�s���{�{�&�&�(�(rc�:�|jj|�yr")r�
settimeout)r�values  rrwzSSLTransport.settimeout�s�������u�%rc�6�|jj�Sr")r�
gettimeoutr$s rrzzSSLTransport.gettimeout�s���{�{�%�%�'�'rc�8�|jj�yr")r�_decref_socketiosr$s rr|zSSLTransport._decref_socketios�s�����%�%�'rc���	|j|jj||�S#tj$r4}|j
tjk(r|jrYd}~y�d}~wwxYw�Nr)rrr1r�SSLError�errno�
SSL_ERROR_EOFr)rr/r0�es    rr.zSSLTransport._wrap_ssl_read�sZ��	��$�$�T�[�[�%5�%5�s�F�C�C���|�|�	��w�w�#�+�+�+��0I�0I����		�s�&)�A0�)A+�*A+�+A0c��yr"r#)r�funcs  rrzSSLTransport._ssl_io_loop�s��EHrc��yr"r#)rr��arg1s   rrzSSLTransport._ssl_io_loop�s��UXrc��yr"r#)rr�r��arg2s    rrzSSLTransport._ssl_io_loop�s��rc��d}d}|r�d}	|�
|�|�}n|�	||�}n	|||�}|j
j
�}|jj|�|�d}nj|tjk(rW|jjt�}|r|jj|�n|jj�|r��tjt |�S#tj$rE}|jtjtjfvr|�|j}Yd}~��d}~wwxYw)z>Performs an I/O loop between incoming/outgoing and the socket.TNF)rrr��SSL_ERROR_WANT_READ�SSL_ERROR_WANT_WRITErr1rrEr6�
SSL_BLOCKSIZErrG�	write_eof�typingr=r
)	rr�r�r��should_loop�retr�r��bufs	         rrzSSLTransport._ssl_io_loop�s��������E�
 ��<�D�L��&�C��\��t�*�C��t�T�*�C��-�-�$�$�&�C��K�K����$��}�#���#�1�1�1��k�k�&�&�}�5����M�M�'�'��,��M�M�+�+�-�3�4�{�{�<��-�-��#�<�<�
 ��7�7�3�#:�#:�C�<T�<T�"U�U��G������	
 �s� C+�+E�>:D>�>E)r�ssl.SSLContext�return�None)NT)
rz
socket.socketrr�r�
str | Noner�boolr�r�)r�r)r(z
typing.Anyr�r�)r��int)�N)r/r�r0ztyping.Any | Noner��int | bytes)r�r)r4r�r5r�r�r�r~)r0�_WriteBufferr8�
int | Noner5r�r�zNone | int | bytes)r)r?�bytesr5r�r�r�)r?r�r5r�r�r�r")rZ�strr[r�rHr�rIr�rJr�r�z1typing.BinaryIO | typing.TextIO | socket.SocketIO)r�r�).)rhztyping.Literal[False]r�z_TYPE_PEER_CERT_RET_DICT | None)rhztyping.Literal[True]r�zbytes | None)F)rhr�r�r)r�r�)r�ztuple[str, str, int] | None)r�z!list[tuple[str, str, int]] | None)rx�float | Noner�r�)r�r�)r/r�r0�bytearray | Noner�r�)r�ztyping.Callable[[], None]r�r�)r�ztyping.Callable[[bytes], int]r�r�r�r�)r�z/typing.Callable[[int, bytearray | None], bytes]r�r�r�r�r�r�)NN)r�z"typing.Callable[..., _ReturnValue]r�zNone | bytes | intr�r�r�r
)�__name__�
__module__�__qualname__�__doc__�staticmethodrr r%r)r+r1r6r9rEr>rbrdr'r��overloadrirmrorqrsrurwrzr|r.rr#rrrrs����
��
�&'+�%)�4��4�$�4�$�	4�
#�4�
�
4�.��$�0�+�"��	
)��
)��
)��	
)�

�
)��:�!%�2�
 $�!�"�2��2��2�
�2��
2��2�
;�2�h.���_�_�36�.�0�.�	(�.��.��_�_�Q��Q�4�%�$�4�,�)�&�(�(���_�_�H��H��_�_�X��X��_�_��=�����	�

����$(�!%�	$.�0�$.�!�$.��	$.�

�$.rr)�
__future__rrTrrr��
exceptionsr�
TYPE_CHECKING�typing_extensionsr�ssl_rr	�Union�	bytearrayr<r��TypeVarr
r�rr#rr�<module>r�s\��"�	�
�
�
�/�	���&�C��|�|�I�z�1�2���v�~�~�n�-���
�y.�y.r


Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
4 Apr 2025 8.03 AM
root / root
0755
__init__.cpython-312.pyc
0.958 KB
4 Apr 2025 8.03 AM
root / root
0644
connection.cpython-312.pyc
4.553 KB
4 Apr 2025 8.03 AM
root / root
0644
proxy.cpython-312.pyc
1.165 KB
4 Apr 2025 8.03 AM
root / root
0644
request.cpython-312.pyc
7.957 KB
4 Apr 2025 8.03 AM
root / root
0644
response.cpython-312.pyc
2.785 KB
4 Apr 2025 8.03 AM
root / root
0644
retry.cpython-312.pyc
19.792 KB
4 Apr 2025 8.03 AM
root / root
0644
ssl_.cpython-312.pyc
16.149 KB
4 Apr 2025 8.03 AM
root / root
0644
ssl_match_hostname.cpython-312.pyc
5.384 KB
4 Apr 2025 8.03 AM
root / root
0644
ssltransport.cpython-312.pyc
12.97 KB
4 Apr 2025 8.03 AM
root / root
0644
timeout.cpython-312.pyc
11.392 KB
4 Apr 2025 8.03 AM
root / root
0644
url.cpython-312.pyc
15.816 KB
4 Apr 2025 8.03 AM
root / root
0644
util.cpython-312.pyc
1.924 KB
4 Apr 2025 8.03 AM
root / root
0644
wait.cpython-312.pyc
3.336 KB
4 Apr 2025 8.03 AM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF