h;)PUddlZddlZddlZddlZddlZddlZddlZddlmZm Z m Z m Z ej dkr ddl mZmZn$ej dkr ddlmZmZnddlmZmZejrddlmZeezejezejezZejed<eezejgeezfzZejed <dd Zdd ZGd de Zej dkrdej!d e"efdZ#ndej!d e"efdZ#dej$ej!zdedzd dfdZ%dS)N)_original_SSLContext_original_super_SSLContext#_truststore_SSLContext_dunder_class"_truststore_SSLContext_super_classWindows)_configure_context_verify_peercerts_implDarwin)Buffer_StrOrBytesPath _PasswordTypereturncttdt ddlmcmcmcm}t|dtdS#t$rYdSwxYw)zqInjects the :class:`truststore.SSLContext` into the ``ssl`` module by replacing :class:`ssl.SSLContext`. SSLContextrN) setattrsslrpip._vendor.urllib3.util.ssl__vendorurllib3utilssl_ ImportError urllib3_ssls {/builddir/build/BUILD/imunify360-venv-2.5.2/opt/imunify360/venv/lib/python3.11/site-packages/pip/_vendor/truststore/_api.pyinject_into_sslr s Cz*** ;;;;;;;;;;;;;;; \:66666      s%A AActtdt ddlmcmcmcm}t|_dS#t$rYdSwxYw)z@Restores the :class:`ssl.SSLContext` class to its original staterrN) rrrrrrrrrrrs rextract_from_sslr/sw C3444 ;;;;;;;;;;;;;;;!5       s: AAceZdZdZedefdZdCdeddfdZ dDd e j d e d e d e d e dzde j dzde jfdZ dEde jde jd e d e dzde j dzde jf dZ dFde ezeje zejezdzde ezeje zejezdzdeje ddfddfdZ dGdededzdedzddfdZe jjfde jddfdZdeje ddfdZ d eje ddfd!Z!d"e ddfd#Z"dej#fd$Z$de%e effd%Z&de%e effd&Z'dHd'Z(ej) dId)ej*dde+ej#fd*Z,ej)dId)ej*dde+efd+Z,ej)dId)e dej#fd,Z,dJd)e de+ej#e+ezfd-Z,ede fd.Z-e-j.d/e ddfd0Z-ede fd1Z/e/j.d/e ddfd2Z/ede fd3Z0e0j.d/e ddfd4Z0ede j1fd5Z2e2j.d/e j1ddfd6Z2ede j1fd7Z3e3j.d/e j1ddfd8Z3ede j4fd9Z5e5j.d/e j4ddfd:Z5ede fd;Z6e6j.d/e ddfd<Z6ede j7fd=Z8edefd>Z9ede j:fd?Z;e;j.d/e j:ddfd@Z;ede j<fdAZ=e=j.d/e j<ddfdBZ=dS)Krz=SSLContext API that uses system certificates on all platformsrctptSN)rrselfs r __class__zSSLContext.__class__=s 3@j@Nprotocolcvt||_Gddtj}||j_dS)Nc eZdZdfd ZxZS)0SSLContext.__init__..TruststoreSSLObjectrNctt}t||j|S)Nserver_hostname)super do_handshake_verify_peercertsr-)r$retr%s rr/z=SSLContext.__init__..TruststoreSSLObject.do_handshakeLs3gg**,,!$8LMMMM r&rN)__name__ __module__ __qualname__r/ __classcell__)r%s@rTruststoreSSLObjectr*Gs=           r&r7)r_ctxr SSLObjectsslobject_class)r$r'r7s r__init__zSSLContext.__init__DsO(22      #-   %8 !!!r&FTsock server_sidedo_handshake_on_connectsuppress_ragged_eofsr-sessionc  t|j5|j||||||}dddn #1swxYwY t||n##t$r|wxYw|S)N)r=r-r>r?r@r,)r r8 wrap_socketr0 Exceptionclose)r$r<r=r>r?r-r@ssl_socks rrBzSSLContext.wrap_socketSs  * *  y,,' /(?%9 -H                 h H H H H H    NN     s!AA AA Bincomingoutgoingct|j5|j|||||}dddn #1swxYwY|S)N)r-r=r@)r r8wrap_bio)r$rFrGr=r-r@ssl_objs rrIzSSLContext.wrap_bioos  * *  i(( /' )G               s AAAcafilecapathcadatar c<|j|||S)N)rKrLrM)r8load_verify_locations)r$rKrLrMs rrOz SSLContext.load_verify_locationss* y..&/   r&certfilekeyfilepasswordc<|j|||S)N)rPrQrR)r8load_cert_chain)r$rPrQrRs rrTzSSLContext.load_cert_chains* y((w)   r&purposec6|j|Sr")r8load_default_certs)r$rUs rrWzSSLContext.load_default_certssy++G444r&alpn_protocolsc6|j|Sr")r8set_alpn_protocols)r$rXs rrZzSSLContext.set_alpn_protocolssy++N;;;r& npn_protocolsc6|j|Sr")r8set_npn_protocols)r$r[s rr]zSSLContext.set_npn_protocolssy**=999r&_SSLContext__cipherlistc6|j|Sr")r8 set_ciphers)r$r^s rr`zSSLContext.set_cipherssy$$\222r&c4|jSr")r8 get_ciphersr#s rrbzSSLContext.get_cipherssy$$&&&r&c4|jSr")r8 session_statsr#s rrdzSSLContext.session_statssy&&(((r&ctr"NotImplementedErrorr#s rcert_store_statszSSLContext.cert_store_stats!###r&c8|jdSr")r8set_default_verify_pathsr#s rrkz#SSLContext.set_default_verify_pathss **,,,,,r&. binary_formcdSr"r$rls r get_ca_certszSSLContext.get_ca_certss 3r&cdSr"rnros rrpzSSLContext.get_ca_certssTWTWr&cdSr"rnros rrpzSSLContext.get_ca_certssCF3r&ctr"rfros rrpzSSLContext.get_ca_certsrir&c|jjSr"r8check_hostnamer#s rrvzSSLContext.check_hostname y''r&valuec||j_dSr"rur$rxs rrvzSSLContext.check_hostnames#(    r&c|jjSr"r8hostname_checks_common_namer#s rr}z&SSLContext.hostname_checks_common_names y44r&c||j_dSr"r|rzs rr}z&SSLContext.hostname_checks_common_names05 ---r&c|jjSr"r8keylog_filenamer#s rrzSSLContext.keylog_filename y((r&c||j_dSr"rrzs rrzSSLContext.keylog_filenames$) !!!r&c|jjSr")r8maximum_versionr#s rrzSSLContext.maximum_versionrr&cPtj|j|dSr")rr__set__r8rzs rrzSSLContext.maximum_version."2:: Iu     r&c|jjSr")r8minimum_versionr#s rrzSSLContext.minimum_versionrr&cPtj|j|dSr")rrrr8rzs rrzSSLContext.minimum_versionrr&c|jjSr")r8optionsr#s rrzSSLContext.optionss y  r&cPtj|j|dSr")rrrr8rzs rrzSSLContext.optionss."*22 Iu     r&c|jjSr"r8post_handshake_authr#s rrzSSLContext.post_handshake_auths y,,r&c||j_dSr"rrzs rrzSSLContext.post_handshake_auths(- %%%r&c|jjSr")r8r'r#s rr'zSSLContext.protocols y!!r&c|jjSr")r8security_levelr#s rrzSSLContext.security_levelrwr&c|jjSr")r8 verify_flagsr#s rrzSSLContext.verify_flagss y%%r&cPtj|j|dSr")rrrr8rzs rrzSSLContext.verify_flagss."/77 Iu     r&c|jjSr")r8 verify_moder#s rrzSSLContext.verify_mode s y$$r&cPtj|j|dSr")rrrr8rzs rrzSSLContext.verify_modes.".66 Iu     r&r")FTTNN)FNN)NNN)NNr2).)F)>r3r4r5__doc__propertytyper%intr;socketboolstrr SSLSession SSLSocketrB MemoryBIOr9rIbytesosPathLiketypingUnionrOr rrTPurpose SERVER_AUTHrWIterablerZr]r`AnyrbdictrdrhrkoverloadLiterallistrprvsetterr}r TLSVersionrrOptionsrr _SSLMethodr'r VerifyFlagsr VerifyModerrnr&rrr:sGG A4AAAXA 8 8 8 8 8 8 8$"(,%)&*)-m"&  #  t $& @"&*)- --  t  $&  (NRMQ48   e bk#..U1CCdJ e bk#..U1CCdJ  S(D01       +/)-   ! !4'  $&       &)[%<55{5 5555 <1E<$<<<<:vs/C:::::333333'VZ'''')tCH~))))$$sCx.$$$$---- _36!>%0 fj _ _WWt(<WtE{WWW_W _FFFvzFFF_F$$$fj9IDQVK9W$$$$((((X()D)T))))5T555X5!'66$666('6))))X)*S*T****))))X) S^     ))))X) S^     !!!!X! ^ S[ T   ^ -T---X-..$... ."#."""X"((((X(&co&&&X& #/ d    %S^%%%X%  D      r&r) sslobjcF|pd}d|DS)Nrnczg|]8}t|tr|n|tj9Srn) isinstancer public_bytes_ssl ENCODING_DER.0certs r z/_get_unverified_chain_bytes..sL   tU++ UDD1B1B4CT1U1U   r&get_unverified_chainrunverified_chains r_get_unverified_chain_bytesrs:!6688>B  (    r&cF|pd}d|DS)NrncLg|]!}|tj"Srn)rrrrs rrz/_get_unverified_chain_bytes..(s)RRR!!$"344RRRr&rrs rrr&s.!6688>BRRAQRRRRr&sock_or_sslobjr-c|} t|ds|j}t|dn#t$rYnwxYwt|}t |j||dS)z{ Verifies the peer certificates from an SSLSocket or SSLObject against the certificates in the OS trust store. rr,N)hasattr_sslobjAttributeErrorrr context)rr-r cert_bytess rr0r0+s+F &"899 $^F&"899 $      -V44J Os ', 99r2)&rplatformrrsysrr_ssl_constantsrrrrsystem_windowsr r _macos_openssl TYPE_CHECKINGpip._vendor.typing_extensionsr rrrr TypeAlias__annotations__Callablerrrr version_infor9rrrr0rnr&rrs  8? !!DDDDDDDDDX_(""BBBBBBBBBDDDDDDDD 5444444%(%K"+c2B$BR[QVEW$W!WWW"%+C%K0P"P vPPP         [ [ [ [ [ 3[ [ [ Bw CM d5k     SCMSd5kSSSS MCM1DG$J r&