관리-도구
편집 파일: ssl_.cpython-311.pyc
� �܋fC � � � d dl mZ d dlZd dlZd dlZd dlZd dlmZmZ d dl m Z mZmZ ddl mZmZmZmZ ddlmZ dd lmZmZ dZdZd Zd Zd ZdgZe eed�Zd � Z eede� � Z d dl!Z!d dl!m"Z"m#Z# n# e$$ r Y nw xY w d dl!mZ n# e$$ r Y nw xY w ddl%mZ n# e$$ r Y nw xY w d dl!m&Z& e&Z'n$# e$$ r d dl!m'Z& e&Z'n# e$$ r dxZ'Z&Y nw xY wY nw xY w d dl!m(Z( n # e$$ r e&Z(Y nw xY w d dl!m)Z)m*Z*m+Z+ n# e$$ r d\ Z*Z+dZ)Y nw xY w d dl!m,Z, n # e$$ r dZ,Y nw xY wd�- g d�� � Z. d dl!mZ n# e$$ r G d� de/� � ZY nw xY wd� Z0d � Z1d!� Z2 d'd"�Z3 d(d#�Z4d$� Z5d%� Z6d)d&�Z7dS )*� )�absolute_importN)�hexlify� unhexlify)�md5�sha1�sha256� )�InsecurePlatformWarning�ProxySchemeUnsupported�SNIMissingWarning�SSLError)�six� )�BRACELESS_IPV6_ADDRZ_RE�IPV4_REFzhttp/1.1)� �( �@ c �� � t t | � � t |� � z � � }t t | � � t |� � � � D ] \ }}|||z z }�|dk S )z� Compare two digests of equal length in constant time. The digests must be of type str/bytes. Returns True if the digests match, and False otherwise. r )�abs�len�zip� bytearray)�a�b�result�left�rights �T/opt/cloudlinux/venv/lib64/python3.11/site-packages/pip/_vendor/urllib3/util/ssl_.py�_const_compare_digest_backportr sd � � ��Q���#�a�&�&�� !� !�F��9�Q�<�<��1���6�6� � ���e��$��,�����Q�;�� �compare_digest)� CERT_REQUIRED�wrap_socket)�HAS_SNI)�SSLTransport)�PROTOCOL_TLS)�PROTOCOL_SSLv23)�PROTOCOL_TLS_CLIENT)�OP_NO_COMPRESSION�OP_NO_SSLv2�OP_NO_SSLv3)i i i )�OP_NO_TICKETi @ �:)zECDHE+AESGCMzECDHE+CHACHA20z DHE+AESGCMzDHE+CHACHA20zECDH+AESGCMz DH+AESGCMzECDH+AESzDH+AESz RSA+AESGCMzRSA+AESz!aNULLz!eNULLz!MD5z!DSS)� SSLContextc �0 � e Zd Zd� Zd� Zdd�Zd� Zd d�ZdS ) r/ c � � || _ d| _ t j | _ d | _ d| _ d | _ d | _ d | _ d S )NFr ) �protocol�check_hostname�ssl� CERT_NONE�verify_mode�ca_certs�options�certfile�keyfile�ciphers)�self�protocol_versions r �__init__zSSLContext.__init__� sB � �,�D�M�"'�D��"�}�D�� �D�M��D�L� �D�M��D�L��D�L�L�Lr! c �"