Files
pyGoEdge-UserPanel/.venv/Lib/site-packages/dns/__pycache__/_ddr.cpython-312.pyc

47 lines
7.6 KiB
Plaintext
Raw Normal View History

2025-11-18 03:36:49 +08:00
<EFBFBD>
g<> i<00><00><><00>ddlZddlZddlmZddlZddlZddlZddlZddl Zddl
Zejjd<03>Z Gd<04>d<05>Zd<06>Zd<07>Zd<08>Zy) <09>N)<01>urlparsez_dns.resolver.arpac<00>,<00>eZdZd<01>Zd<02>Zd<03>Zd<04>Zdd<06>Zy)<08> _SVCBInfoc<00><<00>||_||_||_||_y<00>N)<04>bootstrap_address<73>port<72>hostname<6D> nameservers)<05>selfrr r
r s <20>7E:\Project\pygoedge\.venv\Lib\site-packages\dns/_ddr.py<70>__init__z_SVCBInfo.__init__s <00><00>!2<><04><1E><18><04> <09> <20><04> <0A>&<26><04><18>c<00>L<00>|dD]\}}|dk(s<01> ||jk(s<01>yy)zIVerify that the _SVCBInfo's address is in the cert's subjectAltName (SAN)<29>subjectAltNamez
IP AddressTF)r)r <00>cert<72>name<6D>values r <00>ddr_check_certificatez_SVCBInfo.ddr_check_certificate!s3<00><00><1F> 0<>1<>K<EFBFBD>D<EFBFBD>%<25><13>|<7C>#<23><05><14>1G<31>1G<31>(G<><1B>2<>rc<00><><00>tjj}|j<00>}|jj
|_|Sr)<07>dns<6E>query<72>ssl<73>create_default_context<78>
TLSVersion<EFBFBD>TLSv1_2<5F>minimum_version)r r<00>ctxs r <00>make_tls_contextz_SVCBInfo.make_tls_context(s4<00><00><11>i<EFBFBD>i<EFBFBD>m<EFBFBD>m<EFBFBD><03><11>(<28>(<28>*<2A><03>!<21>n<EFBFBD>n<EFBFBD>4<>4<><03><1B><12>
rc<00> <00>|j<00>}tj<00>|z}tj|j|j
f|<01>5}|j ||j<00><01>5}|jtjj|<03><00>|j<00>|j<00>}|j|<06>cddd<00>cddd<00>S#1swYnxYw ddd<00>y#1swYyxYw)N)<01>server_hostname)r<00>time<6D>socket<65>create_connectionrr <00> wrap_socketr
<00>
settimeoutrr<00>
_remaining<EFBFBD> do_handshake<6B> getpeercertr)r <00>lifetimer<00>
expiration<EFBFBD>s<>tsrs r <00>ddr_tls_check_syncz_SVCBInfo.ddr_tls_check_sync.s<><00><00><12>#<23>#<23>%<25><03><19>Y<EFBFBD>Y<EFBFBD>[<5B>8<EFBFBD>+<2B>
<EFBFBD> <13> %<25> %<25> <11> #<23> #<23>T<EFBFBD>Y<EFBFBD>Y<EFBFBD> /<2F><18>
<EFBFBD> <0E><14><1F><1F><11>D<EFBFBD>M<EFBFBD>M<EFBFBD><1F>B<>b<EFBFBD><12> <0A> <0A>c<EFBFBD>i<EFBFBD>i<EFBFBD>2<>2<>:<3A>><3E>?<3F><12><0F><0F>!<21><19>~<7E>~<7E>'<27><04><1B>1<>1<>$<24>7<> C<01>B<>
<EFBFBD>
<EFBFBD>C<01>B<><42>B<>
<EFBFBD>
<EFBFBD>
<EFBFBD>s%<00>C:<03>2AC$<05> C:<03>$C- <09>)C:<03>:DNc
<00><00>~K<00>|<02>tjj<00>}|j<00>}t j<00>|z}|j tj j|j<00>tjdd|j|jf|||j<00><00>d{<00><02><03>4<00>d{<00><02><03>}|jtjj|<04><00><00>d{<00><03><03>}|j!|<06>cddd<00><00>d{<00><02><03>S7<00>e7<00>^7<00>*7<00> #1<00>d{<00><03><03>7swYyxYw<01>w)Nr)r<00> asyncbackend<6E>get_default_backendrr"<00> make_socket<65>inet<65>af_for_addressrr#<00> SOCK_STREAMr r
r)rr'r)r r*<00>backendrr+r-rs r <00>ddr_tls_check_asyncz_SVCBInfo.ddr_tls_check_async:s<00><00><><00> <12>?<3F><19>&<26>&<26>:<3A>:<3A><<3C>G<EFBFBD><12>#<23>#<23>%<25><03><19>Y<EFBFBD>Y<EFBFBD>[<5B>8<EFBFBD>+<2B>
<EFBFBD> <20>,<2C>,<2C> <0F>H<EFBFBD>H<EFBFBD> #<23> #<23>D<EFBFBD>$:<3A>$:<3A> ;<3B> <12> <1E> <1E> <0A> <10> <11> #<23> #<23>T<EFBFBD>Y<EFBFBD>Y<EFBFBD> /<2F> <14> <0F> <10>M<EFBFBD>M<EFBFBD> 
<EFBFBD> 
<EFBFBD> 
<EFBFBD> 
<EFBFBD><10><1B><1E><1E><03> <09> <09>(<<3C>(<<3C>Z<EFBFBD>(H<>I<>I<>D<EFBFBD><17>-<2D>-<2D>d<EFBFBD>3<> 
<EFBFBD> 
<EFBFBD> 
<EFBFBD><EFBFBD> 
<EFBFBD><EFBFBD>J<01><> 
<EFBFBD><EFBFBD> 
<EFBFBD> 
<EFBFBD> 
<EFBFBD>sl<00>B8D=<01>:D <04>;D=<01>D"<06>D=<01>2D(<03>9D$<06>:D(<03> D=<01>D&<06>D=<01>"D=<01>$D(<03>&D=<01>(D:<07>.D1 <0C>/D:<07>6D=r)<08>__name__<5F>
__module__<EFBFBD> __qualname__rrrr.r7<00>rr rrs<00><00>'<27> <15><13>
8<>4rrc <00>t<00>|j}tjj|<01>sgSg}|jj <00>D<00>][}g}|j jtjjjj<00>}|<05><01>Pt|j<00>}|jjd<01><02>}d}|j jtjjjj <00>}|<05> |j"}d|vr<>|j jtjjjj$<00>}|<05>|j&j)d<04>s<02><01>B|j&ddj+<00>} | j-d<06>sd| z} |<08>d}d|<07>d |<08>| <09><00>}
t/|
<EFBFBD>|j1tjj3|
|<01><00>d
|vr4|<08>d }|j1tjj7|||<07><00>d |vr5|<08>d }|j1tjj9||d|<07><00>t;|<04>d kDs<02><02>?|j1t=||||<04><00><00><02>^|S#t4$rY<00><>wxYw)NT)<01>omit_final_dotsh2s{?dns}i<><69><EFBFBD><EFBFBD><EFBFBD>/i<>zhttps://<2F>:sdotiUsdoqr)<1F>
nameserverrr3<00>
is_address<EFBFBD>rrset<65>processing_order<65>params<6D>get<65>rdtypes<65>svcbbase<73>ParamKey<65>ALPN<50>set<65>ids<64>target<65>to_text<78>PORTr <00>DOHPATHr<00>endswith<74>decode<64>
startswithr<00>append<6E> DoHNameserver<65> Exception<6F> DoTNameserver<65> DoQNameserver<65>lenr) <0B>answerr<00>infos<6F>rrr <00>param<61>alpns<6E>hostr <00>path<74>urls r <00>_extract_nameservers_from_svcbraMsQ<00><00><1E>)<29>)<29><15> <0E>8<EFBFBD>8<EFBFBD> <1E> <1E>0<> 1<><11> <09> <0E>E<EFBFBD><14>l<EFBFBD>l<EFBFBD>+<2B>+<2B>-<2D><02><18> <0B><12> <09> <09> <0A> <0A>c<EFBFBD>k<EFBFBD>k<EFBFBD>2<>2<>;<3B>;<3B>@<40>@<40>A<><05> <10>=<3D> <14><13>E<EFBFBD>I<EFBFBD>I<EFBFBD><0E><05><11>y<EFBFBD>y<EFBFBD> <20> <20><04> <20>5<><04><13><04><12> <09> <09> <0A> <0A>c<EFBFBD>k<EFBFBD>k<EFBFBD>2<>2<>;<3B>;<3B>@<40>@<40>A<><05> <10> <1C><18>:<3A>:<3A>D<EFBFBD> <11>E<EFBFBD>><3E><16>I<EFBFBD>I<EFBFBD>M<EFBFBD>M<EFBFBD>#<23>+<2B>+<2B>"6<>"6<>"?<3F>"?<3F>"G<>"G<>H<>E<EFBFBD><14>}<7D>E<EFBFBD>K<EFBFBD>K<EFBFBD>$8<>$8<><19>$C<><18><18>;<3B>;<3B>s<EFBFBD><02>#<23>*<2A>*<2A>,<2C>D<EFBFBD><17>?<3F>?<3F>3<EFBFBD>'<27><1A>T<EFBFBD>z<EFBFBD><04><13>|<7C><1A><04><1C>T<EFBFBD>F<EFBFBD>!<21>D<EFBFBD>6<EFBFBD>$<24><16>0<>C<EFBFBD> <15><18><13> <0A><1B>"<22>"<22>3<EFBFBD>><3E>><3E>#?<3F>#?<3F><03>EV<45>#W<>X<> <12>U<EFBFBD>?<3F><13>|<7C><1A><04> <17> <1E> <1E><13><0E><0E>,<2C>,<2C>-><3E><04>d<EFBFBD>K<> <0E> <12>U<EFBFBD>?<3F><13>|<7C><1A><04> <17> <1E> <1E><13><0E><0E>,<2C>,<2C>-><3E><04>d<EFBFBD>D<EFBFBD>Q<> <0E> <0F>{<7B> <1B>a<EFBFBD> <1F> <11>L<EFBFBD>L<EFBFBD><19>#4<>d<EFBFBD>D<EFBFBD>+<2B>N<> O<>W.<2E>X <11>L<EFBFBD><4C>#<1D> <15><14> <15>s<00>:J+<02>+ J7<05>6J7c<00><><00>g}t|<00>}|D]/} |j|<01>r|j|j<00><00>1|S#t$rY<00>?wxYw)<01>VReturn a list of TLS-validated resolver nameservers extracted from an SVCB
answer.)rar.<00>extendr rU<00>rYr*r rZ<00>infos r <00>_get_nameservers_syncrg<00>sa<00><00><15>K<EFBFBD> *<2A>6<EFBFBD> 2<>E<EFBFBD><15><04> <11><13>&<26>&<26>x<EFBFBD>0<><1B>"<22>"<22>4<EFBFBD>#3<>#3<>4<><34><16> <17><16><><19> <11> <10> <11>s<00>,A<02> A<05>Ac<00><00><>K<00>g}t|<00>}|D]7} |j|<01><00>d{<00><03><03>r|j|j<00><00>9|S7<00>##t$rY<00>IwxYw<01>w)rcN)rar7rdr rUres r <00>_get_nameservers_asyncri<00>sm<00><00><><00><15>K<EFBFBD> *<2A>6<EFBFBD> 2<>E<EFBFBD><15><04> <11><19>-<2D>-<2D>h<EFBFBD>7<>7<>7<><1B>"<22>"<22>4<EFBFBD>#3<>#3<>4<><34><16> <17><16> 8<><38><18> <11> <10> <11>s8<00>A<01>A<02>A<06>A<02>
A<01>A<02> A<05>A<01>A<05>A)r#r"<00> urllib.parser<00>dns.asyncbackendr<00>dns.inet<65>dns.name<6D>dns.nameserver<65> dns.query<72>dns.rdtypes.svcbbaser<00> from_text<78>_local_resolver_namerrargrir;rr <00><module>rssU<00><01>
<0E> <0B>!<21><17><0F><0F><15><10><1B><1B>x<EFBFBD>x<EFBFBD>)<29>)<29>*><3E>?<3F><14>04<>04<>f1<11>h <17> r