Viewing File: /opt/alt/python38/lib/python3.8/site-packages/urllib3/util/__pycache__/ssl_.cpython-38.pyc
U
`
C @ s d dl mZ d dlZd dlZd dlZd dlZd dlmZmZ d dl m
Z
mZmZ ddl
mZmZmZmZ ddlmZ dd lmZmZ dZdZd
Zd
Zd
ZdgZe
eedZd
d ZeedeZ zd dl!Z!d dl!m"Z"m#Z# W n e$k
r Y nX zd dl!mZ W n e$k
r Y nX zddl%mZ W n e$k
r> Y nX zd dl!m&Z& e&Z'W nJ e$k
r zd dl!m'Z& e&Z'W n e$k
r d Z'Z&Y nX Y nX zd dl!m(Z( W n e$k
r e&Z(Y nX zd dl!m)Z)m*Z*m+Z+ W n" e$k
r d\Z*Z+dZ)Y nX zd dl!m,Z, W n e$k
r2 dZ,Y nX d-ddddd d!d"d#d$d%d&d'd(d)gZ.zd d*l!mZ W n& e$k
r G d+d, d,e/ZY nX d-d. Z0d/d0 Z1d1d2 Z2d=d3d4Z3d>d5d6Z4d7d8 Z5d9d: Z6d?d;d<Z7dS )@ )absolute_importN)hexlify unhexlify)md5sha1sha256 )InsecurePlatformWarningProxySchemeUnsupportedSNIMissingWarningSSLError)six )BRACELESS_IPV6_ADDRZ_REIPV4_REFzhttp/1.1) ( @ c C sD t t| t| }tt| t|D ]\}}|||A O }q&|dkS )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 )abslenzip bytearray)abresultleftright r B/opt/alt/python38/lib/python3.8/site-packages/urllib3/util/ssl_.py_const_compare_digest_backport s r Zcompare_digest)
CERT_REQUIREDwrap_socket)HAS_SNI)SSLTransport)PROTOCOL_TLS)PROTOCOL_SSLv23)PROTOCOL_TLS_CLIENT)OP_NO_COMPRESSIONOP_NO_SSLv2OP_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 @ s8 e Zd Zdd Zdd Zd
ddZdd ZdddZdS )r, c C s6 || _ d| _tj| _d | _d| _d | _d | _d | _ d S )NFr )
protocolcheck_hostnamesslZ CERT_NONEverify_modeca_certsoptionscertfilekeyfileciphers)selfZprotocol_versionr r r __init__ s zSSLContext.__init__c C s || _ || _d S N)r3 r4 )r6 r3 r4 r r r load_cert_chain s zSSLContext.load_cert_chainNc C s* || _ |d k rtd|d k r&tdd S )Nz-CA directories not supported in older Pythonsz&CA data not supported in older Pythons)r1 r )r6 ZcafileZcapathZcadatar r r load_verify_locations s
z SSLContext.load_verify_locationsc C s
|| _ d S r8 r5 )r6 Zcipher_suiter r r set_ciphers s zSSLContext.set_ciphersFc C s>