ROOTPLOIT
Server: LiteSpeed
System: Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
User: niphet (1079)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //opt/alt/python311/lib64/python3.11/__pycache__/ssl.cpython-311.opt-2.pyc

h!
	ddlZddlZddlmZddlmZmZm	Z
ddlmZddlZddlm
Z
mZmZddlmZmZmZddlmZmZmZmZmZmZmZddlmZmZdd	lmZmZm Z m!Z!	dd
lm"Z"n#e#$rYnwxYwddlm$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-ddlm.Z.m/Z/ej0d
e1dee
j0de1deej0de1deej0de1dee
j0de1deej0de1dee2j3xZ4e2_4de2j56DZ7e8e2ddZ9eeGddZ:eeGddZ;eeGd d!Z<eeGd"d#Z=ej>d$krdd%lm?Z?m@Z@dd&lAmAZAmBZBmCZCdd'lAmDZDmEZEmFZFddlAZGddlHZHddlIZIddlJZJeKZLd(gZMeNed)ZOe.ZPeZQd*ZRd+ZSd,ZTd-ZUed.d/ZVd0ZWGd1d2ed2d3ZXGd4d5eXeZYGd6d7eZZeYj[fdddd8d9Z\dKe]d:eYj[dddddd;d<Z^e\Z_e^Z`Gd=d>Zad?ZbGd@dAeAZceceZ_deaeZ_eddd:e]e3ddBdBdf	dCZfdDZgdEZhdFZidGZjdHZkeldeFfdIZmdJZndS)LN)
namedtuple)EnumIntEnumIntFlag)_simple_enum)OPENSSL_VERSION_NUMBEROPENSSL_VERSION_INFOOPENSSL_VERSION)_SSLContext	MemoryBIO
SSLSession)SSLErrorSSLZeroReturnErrorSSLWantReadErrorSSLWantWriteErrorSSLSyscallErrorSSLEOFErrorSSLCertVerificationError)txt2objnid2obj)RAND_statusRAND_add
RAND_bytesRAND_pseudo_bytes)RAND_egd)
HAS_SNIHAS_ECDHHAS_NPNHAS_ALPN	HAS_SSLv2	HAS_SSLv3	HAS_TLSv1HAS_TLSv1_1HAS_TLSv1_2HAS_TLSv1_3)_DEFAULT_CIPHERS_OPENSSL_API_VERSION
_SSLMethodc8|do|dkS)N	PROTOCOL_PROTOCOL_SSLv23
startswithnames */opt/alt/python311/lib64/python3.11/ssl.py<lambda>r1}s--K$:K2K)sourceOptionsc,|dS)NOP_r,r.s r0r1r1s''r2AlertDescriptionc,|dS)NALERT_DESCRIPTION_r,r.s r0r1r1s!566r2SSLErrorNumberc,|dS)N
SSL_ERROR_r,r.s r0r1r1s..r2VerifyFlagsc,|dS)NVERIFY_r,r.s r0r1r1s++r2
VerifyModec,|dS)NCERT_r,r.s r0r1r1s))r2ci|]\}}||	SrD).0r/values   r0
<dictcomp>rGsQQQ;45$QQQr2PROTOCOL_SSLv2cpeZdZejZejZejZ	ej
ZejZ
ejZejZdS)
TLSVersionN)__name__
__module____qualname___sslPROTO_MINIMUM_SUPPORTEDMINIMUM_SUPPORTEDPROTO_SSLv3SSLv3PROTO_TLSv1TLSv1
PROTO_TLSv1_1TLSv1_1
PROTO_TLSv1_2TLSv1_2
PROTO_TLSv1_3TLSv1_3PROTO_MAXIMUM_SUPPORTEDMAXIMUM_SUPPORTEDrDr2r0rJrJsJ4EE G G G4r2rJc(eZdZ	dZdZdZdZdZdZdS)_TLSContentTypeN)	rKrLrMCHANGE_CIPHER_SPECALERT	HANDSHAKEAPPLICATION_DATAHEADERINNER_CONTENT_TYPErDr2r0r^r^s8EI
Fr2r^ceZdZ	dZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#S)$
_TLSAlertTyper
r_r`ra()*+,-./0123<FGPVZdmnopqrstxN)%rKrLrMCLOSE_NOTIFYUNEXPECTED_MESSAGEBAD_RECORD_MACDECRYPTION_FAILEDRECORD_OVERFLOWDECOMPRESSION_FAILUREHANDSHAKE_FAILURENO_CERTIFICATEBAD_CERTIFICATEUNSUPPORTED_CERTIFICATECERTIFICATE_REVOKEDCERTIFICATE_EXPIREDCERTIFICATE_UNKNOWNILLEGAL_PARAMETER
UNKNOWN_CA
ACCESS_DENIEDDECODE_ERROR
DECRYPT_ERROREXPORT_RESTRICTIONPROTOCOL_VERSIONINSUFFICIENT_SECURITYINTERNAL_ERRORINAPPROPRIATE_FALLBACK
USER_CANCELEDNO_RENEGOTIATIONMISSING_EXTENSIONUNSUPPORTED_EXTENSIONCERTIFICATE_UNOBTAINABLEUNRECOGNIZED_NAMEBAD_CERTIFICATE_STATUS_RESPONSEBAD_CERTIFICATE_HASH_VALUEUNKNOWN_PSK_IDENTITYCERTIFICATE_REQUIREDNO_APPLICATION_PROTOCOLrDr2r0rlrlsLNONO JMLMNM"&)#!$!r2rlcheZdZ	dZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdS)_TLSMessageTyper
r_r`rarbCrdN)rKrLrM
HELLO_REQUESTCLIENT_HELLOSERVER_HELLOHELLO_VERIFY_REQUESTNEWSESSION_TICKETEND_OF_EARLY_DATAHELLO_RETRY_REQUESTENCRYPTED_EXTENSIONSCERTIFICATESERVER_KEY_EXCHANGECERTIFICATE_REQUESTSERVER_DONECERTIFICATE_VERIFYCLIENT_KEY_EXCHANGEFINISHEDCERTIFICATE_URLCERTIFICATE_STATUSSUPPLEMENTAL_DATA
KEY_UPDATE
NEXT_PROTOMESSAGE_HASHrerDr2r0rrsMLLKKHOJJLr2rwin32)enum_certificates	enum_crls)socketSOCK_STREAMcreate_connection)
SOL_SOCKETSO_TYPE_GLOBAL_DEFAULT_TIMEOUT
tls-uniqueHOSTFLAG_NEVER_CHECK_SUBJECTc	|sdS|d}|s*||kS|dkr"td||d\}}}d|vr"td||s"td||dkr"td||d\}}}|r|sdS||kS)	NF*rz1too many wildcards in certificate DNS name: {!r}..z9wildcard can only be present in the leftmost label: {!r}.z>sole wildcard without additional labels are not support: {!r}.z<partial wildcards in leftmost label are not supported: {!r}.)countlowerCertificateErrorformat	partition)dnhostname	wildcardsdn_leftmostsepdn_remainderhostname_leftmosthostname_remainders        r0_dnsname_matchrsqu

I.xxzzX^^----1}}?FFrJJLL	L&(\\#%6%6"Kl
l
F2JJ  	  
F2JJ  	 c
F2JJ  	 2:1C1CC1H1H.s.Cu#5#;#;#=#===r2c		tj|}tj||kr|Std|#t
$rYnwxYw	tjtj|S#t
$r#td|t$rYnwxYwtd|)Nz'{!r} is not a quad-dotted IPv4 address.z+{!r} is neither an IPv4 nor an IP6 address.z{!r} is not an IPv4 address.)	_socket	inet_aton	inet_ntoa
ValueErrorrOSError	inet_ptonAF_INET6AttributeError)ipnameaddrs  r0_inet_patonrIs
 ((
T""f,,K9@@HH





 !16:::444$$*F6NN44	4



3::6BB
C
CCs#A
A A $B5B;:B;cR	t|}||kSN)rrstrip)cert_ipaddresshost_ipips   r0_ipaddress_matchrls,
^**,,	-	-B
=r2c`	tjdtd|std	t	|}n#t$rd}YnwxYwg}|dd}|D]f\}}|dkr+|t
||rdS||6|dkr*|t||rdS||g|sP|d	dD]9}|D]4\}}|d
kr)t
||rdS||5:t|dkr;td|d
dtt|t|dkrtd|d|dtd)Nz"ssl.match_hostname() is deprecatedrcategory
stacklevelztempty or no certificate, match_hostname needs a SSL socket or SSL context with either CERT_OPTIONAL or CERT_REQUIREDsubjectAltNamerDDNSz
IP Addresssubject
commonNamerz	hostname z doesn't match either of z, z doesn't match rz=no appropriate commonName or subjectAltName fields were found)warningswarnDeprecationWarningrrgetrappendrlenrjoinmaprepr)certrrdnsnamessankeyrFsubs        r0match_hostnamerxsC
M,#
;:;;	;h''H
((#R
(
(C##
U%<<>%#B#BOOE""""
L
 
 "'7w'G'G"OOE"""
+88Ir**	+	+C!
+
+
U,&&%eX66OOE***

+8}}qxx3tX#6#6777 9::	:

X!		xx! &''	' /00	0sAAADefaultVerifyPathszQcafile capath openssl_cafile_env openssl_cafile openssl_capath_env openssl_capathcz	tj}tj|d|d}tj|d|d}ttj|r|ndtj|r|ndg|RS)Nrrrr)	rNget_default_verify_pathsosenvironrrpathisfileisdir)partscafilecapaths   r0rrs)++EZ^^E!HeAh
/
/F
Z^^E!HeAh
/
/Fv(>(>HffD(*

f(=(=Gff4&$&&&&r2cXeZdZ	dZfdZefdZefdZxZS)_ASN1ObjectrDcVtj|gt|dRS)NFr.super__new___txt2obj)clsoid	__class__s  r0r*z_ASN1Object.__new__s.uwws?Xc%>%>%>????r2cT	tj|gt|RSr)r)r*_nid2obj)r,nidr.s  r0fromnidz_ASN1Object.fromnids,	uwws3Xc]]3333r2cX	tj|gt|dRS)NTr.r()r,r/r.s  r0fromnamez_ASN1Object.fromnames3	uwws?Xd%>%>%>????r2)	rKrLrM	__slots__r*classmethodr2r4
__classcell__r.s@r0r&r&sI@@@@@4444[4
@@@@[@@@@@r2r&znid shortname longname oidceZdZ	dZdZdS)Purposez1.3.6.1.5.5.7.3.1z1.3.6.1.5.5.7.3.2N)rKrLrMSERVER_AUTHCLIENT_AUTHrDr2r0r:r:s%K%KKKr2r:ceZdZ	dZdZdZd dZdZ				d!dZ		d"dZ	d	Z
d
ZdZdZ
ejfd
Zeedr>efdZejfdZefdZejfdZefdZejfdZeedredZejdZnedZefdZejfdZefdZefdZejfdZefdZejfdZxZS)#
SSLContext)CAROOTNcz|#tjdtdt}t	j||}|S)Nz9ssl.SSLContext() without protocol argument is deprecated.rr)rrr
PROTOCOL_TLSrr*)r,protocolargskwargsselfs     r0r*zSSLContext.__new__sHMK+




$H"311r2c|dSt|tr(|ddS|dS)Nidnaascii)
isinstancestrencodedecode)rFrs  r0_encode_hostnamezSSLContext._encode_hostnamesQ4
#
&
&	,??6**11':::??7+++r2FTc	D|j|||||||S)N)sockserver_sidedo_handshake_on_connectsuppress_ragged_eofsserver_hostnamecontextsession)sslsocket_class_create)rFrPrQrRrSrTrVs       r0wrap_socketzSSLContext.wrap_sockets9#++#$;!5+,

	
r2ch|j|||||||S)N)rQrTrVrU)sslobject_classrXrN)rFincomingoutgoingrQrTrVs      r0wrap_biozSSLContext.wrap_biosA#++hK 11/BBT,

	
r2ctjdtdt}|D]~}t	|d}t|dkst|dkrt
d|t||||	|dS)N'ssl NPN is deprecated, use ALPN insteadrrrIrz(NPN protocols must be 1 to 255 in length)
rrr
	bytearraybytesrrrextend_set_npn_protocols)rF
npn_protocolsprotosrCbs     r0set_npn_protocolszSSLContext.set_npn_protocolss
5	
	
	
	

%		Hh((A1vv{{c!ffsllIJJJMM#a&&!!!MM!'''''r2cv	d_dStstdfd}|_dS)Nznot a callable objectcH|}|||Sr)rN)sslobj
servernamesslctxrFserver_name_callbacks   r0shim_cbz3SSLContext.set_servername_callback.<locals>.shim_cb0s+!22:>>
++FJGGGr2)sni_callbackcallable	TypeError)rFrprqs`` r0set_servername_callbackz"SSLContext.set_servername_callback)sl' $D011
9 7888
H
H
H
H
H
H!(Dr2cNt}|D]~}t|d}t|dkst|dkrtd|t|||||dS)NrIrrbz)ALPN protocols must be 1 to 255 in length)rcrdrrrre_set_alpn_protocols)rFalpn_protocolsrhrCris     r0set_alpn_protocolszSSLContext.set_alpn_protocols6s&		Hh((A1vv{{c!ffsllJKKKMM#a&&!!!MM!  (((((r2ct}	t|D].\}}}|dkr"|dus	|j|vr||/n$#t$rtjdYnwxYw|r|||S)Nx509_asnTz-unable to enumerate Windows certificate store)cadata)rcrr-rePermissionErrorrrload_verify_locations)rF	storenamepurposecertsrencodingtrusts       r0_load_windows_store_certsz$SSLContext._load_windows_store_certsAs	K):9)E)E
+
+%hz))}}u(<(<T***	
+
	K	K	KMIJJJJJ	K	5&&e&444s>AA0/A0ct|tst|tjdkr |jD]}||||dS)Nr)rJr&rtsysplatform_windows_cert_storesrset_default_verify_paths)rFrrs   r0load_default_certszSSLContext.load_default_certsOst';//	%G$$$<7""!6
C
C	..y'BBBB%%'''''r2minimum_versioncDttjSr)rJr)rrFr.s r0rzSSLContext.minimum_versionXegg5666r2c|tjkr|xjtjzc_tttj||dSr)	rJrRoptionsr4OP_NO_SSLv3r)r>r__set__rFrFr.s  r0rzSSLContext.minimum_version\sP
(((!4 44*j))9AA$NNNNNr2cDttjSr)rJr)maximum_versionrs r0rzSSLContext.maximum_versionbrr2cntttj||dSr)r)r>rrrs  r0rzSSLContext.maximum_versionfs,*j))9AA$NNNNNr2cDttjSr)r4r)rrs r0rzSSLContext.optionsjsuww'''r2cntttj||dSr)r)r>rrrs  r0rzSSLContext.optionsns,
j*%%-55dEBBBBBr2rcJ|jtjz}|tjkSr_host_flagsrNr)rFncss  r0hostname_checks_common_namez&SSLContext.hostname_checks_common_namess "T%FFC$;;;r2cx|r|xjtjzc_dS|xjtjzc_dSrr)rFrFs  r0rz&SSLContext.hostname_checks_common_namexsH
F  T%F$FF      D$EE    r2cdSNTrDrFs r0rz&SSLContext.hostname_checks_common_names4r2cB	tj}||jSdSr)r)
_msg_callback
user_function)rFinnerr.s  r0rzSSLContext._msg_callbacks*	>%&&4r2c:5tttj|ddSt	dstdfd}|_tttj||dS)N__call__z is not callable.cP	t|}n#t$rYnwxYw	t|}n#t$rYnwxYw|tjkrt}n|tjkrt
}nt}	||}n#t$rYnwxYw||||||Sr)rJrr^rirfrlr)conn	directionversioncontent_typemsg_typedatamsg_enumcallbacks       r0rz'SSLContext._msg_callback.<locals>.inners
$W--




.|<<



555*!666(*
#8H--



8D)W((D::
:s-
  4
AA<B
BB)r)r>rrhasattrrtr)rFrrr.s ` r0rzSSLContext._msg_callbacks*j))7??dKKKFx,,	<x:::;;;	:	:	:	:	:2'
j*%%3;;D%HHHHHr2cDttjSr)r(r)rCrs r0rCzSSLContext.protocols%''*+++r2cDttjSr)r=r)verify_flagsrs r0rzSSLContext.verify_flagss577/000r2cntttj||dSr)r)r>rrrs  r0rzSSLContext.verify_flagss,
j*%%2::4GGGGGr2cntj}	t|S#t$r|cYSwxYwr)r)verify_moder@rrs  r0rzSSLContext.verify_modesF#	e$$$			LLL	s%44cntttj||dSr)r)r>rrrs  r0rzSSLContext.verify_modes,
j*%%199$FFFFFr2r)FTTNN)FNN)rKrLrMrrWr[r*rNrYr^rjruryrr:r;rrrpropertyrsetterrrrNrrrCrrr7r8s@r0r>r>s>)OO				,,,-2,0)-26



 8=/3



((( (((	)	)	)*1)<((((w{-..O		7	7	7	7
	7
		O	O	O	O
 		O

	7	7	7	7
	7
		O	O	O	O
 		O((((X(
^CCCC^Cwt344		<	<
	<
%	+	F	F
,	+	F	F
		
	$$$$X$L#I#I#I#I#IJ,,,,X,1111X1HHHHHXGGGGGGGGGr2r>)r#r$r|c@	t|tst||tjkr(tt}t|_d|_	n4|tj
krtt}nt||s|s|r|
|||n%|jtkr||t!|dr9t"jd}|rt(jjs||_|S)NTkeylog_filename
SSLKEYLOGFILE)rJr&rtr:r;r>PROTOCOL_TLS_CLIENT
CERT_REQUIREDrcheck_hostnamer<PROTOCOL_TLS_SERVERrr~	CERT_NONErrrrrrflagsignore_environmentr)rr#r$r|rU
keylogfiles      r0create_default_contextrs"g{++!   
'%%%011+!%	G'	'	'011!!!
,,6,%%fff====				)	)	""7+++w)**1Z^^O44
	1ci:	1&0G#Nr2F)	cert_reqsrrcertfilekeyfiler#r$r|c	t|tst||tjkr
|t
}n)|tjkr
|t}nt|t|}	||	_
|||	_|rd|	_
|r|std|s|r|	|||s|s|r|	
|||n%|	jtkr|	|t!|	dr9t"jd}
|
rt(jjs|
|	_|	S)NTcertfile must be specifiedrr)rJr&rtr:r;rr<rrr>rrload_cert_chainr~rrrrrrrrrr)rCrrrrrr#r$r|rUrs           r0_create_unverified_contextrsg{++!   
'%%%*H	G'	'	'*H!!!""G+G'&!%7x75666373'222,,6,%%fff====				)	)	""7+++w)**1Z^^O44
	1ci:	1&0G#Nr2c:eZdZ	dZe		ddZedZejdZedZ	e	jdZ	ed	Z
ed
ZedZdd
Z
dZddZdZdZdZdZdZdZdZdZddZdZdZdS) 	SSLObjectc:t|jjd)NzU does not have a public constructor. Instances are returned by SSLContext.wrap_bio().rtr.rKrFrDrEs   r0__init__zSSLObject.__init__\s.~&
M
M
M

	
r2FNct||}|||||||}||_|S)N)rQrTownerrV)r*	_wrap_bio_sslobj)	r,r\r]rQrTrVrUrFrms	         r0rXzSSLObject._createbsL{{3""hK+#


r2c	|jjSrrrUrs r0rUzSSLObject.contextns6|##r2c||j_dSrrrFctxs  r0rUzSSLObject.contextss"r2c	|jjSrrrVrs r0rVzSSLObject.sessionws/|##r2c||j_dSrrrFrVs  r0rVzSSLObject.session|s&r2c	|jjSrrsession_reusedrs r0rzSSLObject.session_reuseds<|**r2c	|jjSr)rrQrs r0rQzSSLObject.server_sides3|''r2c	|jjSr)rrTrs r0rTzSSLObject.server_hostnames	#|++r2cx	||j||}n|j|}|Sr)rread)rFrbuffervs    r0rzSSLObject.readsB	
!!#v..AA!!#&&Ar2c8	|j|Sr)rwriterFrs  r0rzSSLObject.writes	
|!!$'''r2c8	|j|Sr)rgetpeercertrFbinary_forms  r0rzSSLObject.getpeercerts	|''444r2c@	tjdtddSNr`rra)rrr
rs r0selected_npn_protocolzSSLObject.selected_npn_protocols5		
5	
	
	
	
	
	
r2c6	|jSr)rselected_alpn_protocolrs r0rz SSLObject.selected_alpn_protocols	|22444r2c6	|jSr)rcipherrs r0rzSSLObject.ciphers	(|""$$$r2c6	|jSr)rshared_ciphersrs r0rzSSLObject.shared_cipherss	|**,,,r2c6	|jSr)rcompressionrs r0rzSSLObject.compressions	P|'')))r2c6	|jSr)rpendingrs r0rzSSLObject.pendingsF|##%%%r2c:	|jdSr)rdo_handshakers r0rzSSLObject.do_handshakes*!!#####r2c6	|jSr)rshutdownrs r0unwrapzSSLObject.unwraps/|$$&&&r2rc8	|j|Sr)rget_channel_bindingrFcb_types  r0rzSSLObject.get_channel_bindings 	M|//888r2c6	|jSrrrrs r0rzSSLObject.versions	!|##%%%r2c4|jSr)rverify_client_post_handshakers r0rz&SSLObject.verify_client_post_handshakes|88:::r2)FNNNrNFr)rKrLrMrr6rXrrUrrVrrQrTrrrrrrrrrrrrrrrDr2r0rrMs



5:=A			[	$$X$
^##^#$$X$
^''^'++X+((X(,,X,




(((5555


555%%%
---***
&&&$$$'''9999&&&
;;;;;r2rcP	tt|jj|_|Sr)getattrrrK__doc__)funcs r0_sslcopydocrs 49dm44<DLKr2ceZdZ	dZe			d0fd	ZeedZej	dZeedZ
e
j	d	Z
eed
ZdZd1dZ
d
Zd2dZdZed3dZedZedZedZedZedZd4fd	Zd1fd	ZdZd4fd	Zd5fd	Zd6fd	Zd7fd	Zd6fd	Zd7fd 	Zd!Z d"Z!ed#Z"fd$Z#ed%Z$ed&Z%fd'Z&ed3d(Z'fd)Z(d*Z)d+Z*fd,Z+ed8d.Z,ed/Z-xZ.S)9	SSLSocketc:t|jjd)NzX does not have a public constructor. Instances are returned by SSLContext.wrap_socket().rrs   r0rzSSLSocket.__init__s+~&
)
)
)

	
r2FTNc|tttkrt	d|r"|rtd|td|jr|std|}t|j	|j
|j|}	|j
|fi|	}
tt|
jdi|	|	||
_||
_d|
_d|
_||
_|||
_||
_||
_	|
d}n#t8$r}|jt:jkrd}|
}
|
 d	|
!d}n9#t8$r,}|jt:jt:j"fvrd	}Yd}~nd}~wwxYw|
 |
|r/d
}tG|j|}||_$d|_%	|#d}wxYwYd}~nd}~wwxYw|
&|||
_'|rm|
j(|
||
j|
|
j|
_|r=|
}|dkrtd
|
)n,#	|
*n#t8$rYnwxYwxYw|
S)Nz!only stream sockets are supportedz4server_hostname can only be specified in client modez,session can only be specified in client modez'check_hostname requires server_hostname)familytypeprotofilenoFTrr2z5Closed before TLS handshake with data in recv buffer.rrVzHdo_handshake_on_connect should not be specified for non-blocking socketsrD)+
getsockoptrrrNotImplementedErrorrr
gettimeoutdictrrrrr*r)rrdetach_context_session_closedrrQrNrTrRrSgetpeernamererrnoENOTCONNgetblockingsetblockingrecvEINVALrreasonlibrary
settimeout
_connected_wrap_socketrclose)r,rPrQrRrSrTrUrVsock_timeoutrErF	connectedeblockingnotconn_pre_handshake_datar- notconn_pre_handshake_data_errortimeoutr.s                  r0rXzSSLSocket._creates??:w//;>>%&IJJJ	0
3 "2333" "/000!	H/	HFGGG((;TYdj;;==


s{3))&))'i'11&111


C	#DM#DM DLDL*D#*#;#;O#L#LD +BD((<D%#
!  """D!		C
@
@
@7en,,!	++--  '''
5
261..555wu~u|&DDD14......	5
  ***-
@UF7?7P7P4>D4;?C4<@>><@8????
@
@
@
@
@%
@F
OOL)))'DO
(#}99+t';
 :  +("oo//G#~~()sttt%%'''	






sAK
E$!K$
I.AI
0GI

G<"G72I
7G<<?I
<H>>II
K
IBKL!K65L6
LLLLc|jSr)r#rs r0rUzSSLSocket.contextYs}r2c,||_||j_dSr)r#rrUrs  r0rUzSSLSocket.context^s
"r2c,|j|jjSdSrrrs r0rVzSSLSocket.sessioncs<#<''$#r2c>||_|j||j_dSdSr)r$rrVrs  r0rVzSSLSocket.sessionis)
<##*DL   $#r2c,|j|jjSdSrrrs r0rzSSLSocket.session_reusedos<#<..$#r2c:td|jjz)NzCan't dup() %s instances)rr.rKrs r0dupz
SSLSocket.dupus$!"<"&."9#:;;	;r2cdSrrD)rFmsgs  r0_checkClosedzSSLSocket._checkClosedysr2c@|js|dSdSr)r0r&rs r0_check_connectedzSSLSocket._check_connected}s0	

		r2rcD	||jtd	||j||S|j|S#t$r1}|jdtkr|jr|Yd}~dSYd}~dSd}~wwxYw)Nz'Read on closed or unwrapped SSL socket.rr2)rCrrrrrD
SSL_ERROR_EOFrS)rFrrxs    r0rzSSLSocket.reads	-	
<FGGG	!|((f555|((---			vayM))d.G)%1111133333	s#A$
A$$
B.BBBc	||jtd|j|S)Nz(Write on closed or unwrapped SSL socket.)rCrrrrs  r0rzSSLSocket.writesH	9	
<GHHH|!!$'''r2c|||j|Sr)rCrErrrs  r0rzSSLSocket.getpeercerts<|''444r2cf|tjdtddSr)rCrrr
rs r0rzSSLSocket.selected_npn_protocols=
5	
	
	
	

tr2c||jtjsdS|jSr)rCrrNrrrs r0rz SSLSocket.selected_alpn_protocols<<t}4<66888r2cn||jdS|jSr)rCrrrs r0rzSSLSocket.ciphers5<4<&&(((r2cn||jdS|jSr)rCrrrs r0rzSSLSocket.shared_cipherss5<4<..000r2cn||jdS|jSr)rCrrrs r0rzSSLSocket.compressions5<4<++---r2rc||j7|dkrtd|jz|j|St||S)Nrz3non-zero flags not allowed in calls to send() on %s)rCrrr.rr)send)rFrrr.s   r0rQzSSLSocket.sendsu<#zz IN#$$$<%%d+++77<<e,,,r2c||jtd|jz|"t	||St	|||S)Nz%sendto not allowed on instances of %s)rCrrr.r)sendto)rFr
flags_or_addrrr.s    r0rSzSSLSocket.sendtoss<#D!^,--
-
\77>>$
66677>>$
t<<<r2c0td|jz)Nz&sendmsg not allowed on instances of %srr.rs   r0sendmsgzSSLSocket.sendmsgs#""J"&.#122	2r2c||j|dkrtd|jzd}t	|5}|d5}t
|}||kr(|||d}||z
}||k(dddn#1swxYwYddddS#1swxYwYdSt	||S)Nrz6non-zero flags not allowed in calls to sendall() on %sB)
rCrrr.
memoryviewcastrrQr)sendall)	rFrrrview	byte_viewamountrr.s	        r0r\zSSLSocket.sendallsx<#zz LN#$$$ED!!
T499S>>
YYfnn		)EFF"344AQJEfnn
































77??4///s6C!>B+C+B/	/C2B/	3CC
Cc	|j||||St|||Sr)r_sendfile_use_sendr)sendfile)rFfileoffsetrr.s    r0rbzSSLSocket.sendfilesH	<#**4???77##D&%888r2c||j2|dkrtd|jz||St||S)Nrz3non-zero flags not allowed in calls to recv() on %s)rCrrr.rr)r+rFbuflenrr.s   r0r+zSSLSocket.recvsq<#zz IN#$$$99V$$$77<<...r2cX||7|3t|5}|j}dddn#1swxYwY|sd}nd}|j3|dkrt	d|jz|||St|||S)Nrrz8non-zero flags not allowed in calls to recv_into() on %s)	rCrZnbytesrrr.rr)	recv_into)rFrrirr]r.s     r0rjzSSLSocket.recv_intos>!'')4![F)))))))))))))))"!F<#zz L.!"""99VV,,,77$$VVU;;;s=AAc||jtd|jzt	||S)Nz'recvfrom not allowed on instances of %s)rCrrr.r)recvfromrfs   r0rlzSSLSocket.recvfrom&sX<#F!^,--
-77##FE222r2c||jtd|jzt	|||S)Nz,recvfrom_into not allowed on instances of %s)rCrrr.r)
recvfrom_into)rFrrirr.s    r0rnzSSLSocket.recvfrom_into.sZ<#K!^,--
-77((???r2c0td|jz)Nz&recvmsg not allowed on instances of %srVrs   r0recvmsgzSSLSocket.recvmsg6s!!"J"&.#122	2r2c0td|jz)Nz+recvmsg_into not allowed on instances of %srVrs   r0recvmsg_intozSSLSocket.recvmsg_into:s#!#')-#899	9r2cn||j|jSdSNr)rCrrrs r0rzSSLSocket.pending>s5<#<'')))1r2c|d|_t|dSr)rCrr)r)rFhowr.s  r0rzSSLSocket.shutdownFs:
r2c|jr"|j}d|_|Stdt|zNzNo SSL wrapper around )rrrrK)rFss  r0rzSSLSocket.unwrapKsF<	C%%''ADLH5D		ABBBr2c|jr|jStdt|zrx)rrrrKrs r0rz&SSLSocket.verify_client_post_handshakeTs;<	C<<<>>>5D		ABBBr2cVd|_tdSr)rr)_real_closers r0r|zSSLSocket._real_close[s&
r2c"||}	|dkr|r|d|j||dS#||wxYw)Nr)rEr r/rr)rFblockr9s   r0rzSSLSocket.do_handshake_s//##	%#~~%~%%%L%%'''OOG$$$$$DOOG$$$$s6A77Bc|jrtd|js|jtd|j|d|j||j|_	|r"t	|}n#d}t
||s"d|_|jr||S#ttf$r	d|_wxYw)Nz!can't connect in server-side modez/attempt to connect already-connected SSLSocket!FrT)rQrr0rrUr1rTr$r)
connect_exconnectrRrr)rFrrrcr.s    r0
_real_connectzSSLSocket._real_connectjs	B@AAA?	Pdl6NOOO|00%-
1


	
&WW''--%%%
("&/(%%'''I$			DL	s
$A,CC+c4	||ddS)NFrrFrs  r0rzSSLSocket.connects#	4'''''r2c0	||dSrrrs  r0rzSSLSocket.connect_exs	!!$---r2c	t\}}|j||j|jd}||fS)NT)rRrSrQ)r)acceptrUrYrRrS)rFnewsockrr.s   r0rzSSLSocket.acceptsZ	>((
,**7,0,H)-)B $+&&}r2rc|j|j|S|tvr"td|dS)Nz({0} channel binding type not implemented)rrCHANNEL_BINDING_TYPESrrrs  r0rzSSLSocket.get_channel_bindingsV<#<33G<<<333 >EEgNN4r2cF|j|jSdSrr	rs r0rzSSLSocket.versions#<#<'')))4r2)FTTNNNrrr
)r)rN)rrrtr)/rKrLrMrr6rXrrrUrrVrr@rCrErrrrrrrrrQrSrWr\rbr+rjrlrnrprrrrrrr|rrrrrrrr7r8s@r0rrsi;


FJ;?&*\\\\\[\|[X
^##^#(([X(
^++^+
//[X/;;;



*(((555[5
[99[9))[)11[1..[.	-	-	-	-	-	-======222000000 999999	/	/	/	/	/	/<<<<<<&333333@@@@@@222999[
CC[CCC[C%%%[%4(((
...





[[r2rTc
ptjdtd|r|std|r|stdt	|}
||
_|r|
||r|
|||	r|
|	|
	||||S)Nz=ssl.wrap_socket() is deprecated, use SSLContext.wrap_socket()rrz5certfile must be specified for server-side operationsr)rPrQrRrS)
rrr
rr>rr~rset_ciphersrY)rPrrrQrssl_versionca_certsrRrSciphersrUs           r0rYrYs
MG#
'8'&''	'7x75666%%G#G0%%h///3'222%G$$$
{ 71r2c6	ddlm}ddlm}d}d}	||dddz}||dd|}||d|f|dd	zS#t$rt
d
|d|dwxYw)
Nr)strptime)timegm)JanFebMarAprMayJunJulAugSepOctNovDecz %d %H:%M:%S %Y GMTrrrrz
time data z does not match format "%b")timercalendarrindextitler)	cert_timerrmonthstime_formatmonth_numbertts       r0cert_time_to_secondsrsF(K
7||IbqbM$7$7$9$9::Q>Xim[
1
1vr!ul+b1g5666FFFj-6YYEFF	FFs2A77!Bz-----BEGIN CERTIFICATE-----z-----END CERTIFICATE-----c	ttj|ddtg}|fdt	dtdDz
}|tdzd|S)NASCIIstrictc*g|]}||dzS)@rD)rEifs  r0
<listcomp>z(DER_cert_to_PEM_cert.<locals>.<listcomp>s%
3
3
31QqtV9
3
3
3r2rr
)	rKbase64standard_b64encode
PEM_HEADERrangerr
PEM_FOOTERr)der_cert_bytesssrs  @r0DER_cert_to_PEM_certrs&	F%n55wIIA
B
3
3
3
3eAs1vvr22
3
3
33BIIj4   99R==r2c	|tstdtz|t
stdt
z|t
tt
t
}tj|	ddS)Nz(Invalid PEM encoding; must start with %sz&Invalid PEM encoding; must end with %srr)
r-rrstripendswithrrrdecodebytesrL)pem_cert_stringds  r0PEM_cert_to_DER_certrs4%%j11'C%&''	'  ""++J77'A%&''	'JZ0@ @AAahhw99:::r2cL	|\}}|t}nt}t|||}t||5}|||5}	|	d}
dddn#1swxYwYdddn#1swxYwYt
|
S)N)rr#)r9)rTT)rr_create_stdlib_contextrrYrr)rrrr9hostportrrUrPsslsockdercerts           r0get_server_certificater
s5JD$!			$[/8,4666G
4	1	1	10T

 
 t
 
<
<	0))$//G	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0000000000000000 (((s5BA5)B5A9	9B<A9	=BBBc8t|dS)Nz	<unknown>)_PROTOCOL_NAMESr)
protocol_codes r0get_protocol_namer s}k:::r2r)orrcollectionsrenumr_Enumr_IntEnumr_IntFlagrrNrr	r
rrr
rrrrrrrrr+rr0rrrrrImportErrorrrrrr r!r"r#r$r%r&r'	_convert_rKr(rBr+__members__itemsrr_SSLv2_IF_EXISTSrJr^rlrrrrrrrrrrrrr'rrsocket_errorrrHAS_NEVER_CHECK_COMMON_NAME_RESTRICTED_SERVER_CIPHERSrrrrrrrr&r:r>r;rrr_create_default_https_contextrrrrrWr[rYrrrrrrrrrDr2r0<module>rsXt


				""""""HHHHHHHHHHNNNNNNNNNN3333333333:9999999EEEEEEEEEEEE				D	
87777777(KK

x''
66
h..
8++
())
0:/FF*,QQ*2H2N2N2P2PQQQ7:'7>>h55555555hh&"&"&"&"&"&"&"&"Rh        :<7111111119999999999??????????



%%gd,JKK.+.>.>.>b D D DF			;0;0;0| Z 4&&&@@@@@**],HII@@@*&&&&&k5&&&BGBGBGBGBGBGBGBGJ$+#6$$"&t$$$$$L49*/9L$($"&tD44444n!74X;X;X;X;X;X;X;X;v||||||||@'
&
#T!Y(4(,%)@777<+

(
;;;.A$(2I)))),;;;;;sA&&A.-A.