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

80 lines
6.5 KiB
Plaintext
Raw Normal View History

2025-11-18 03:36:49 +08:00
<EFBFBD>
g<> iu<00><00><00>dZddlZddlZddlmZddlZddlZejd<04>Z de
de fd<07>Z ejd<08>Z ejd <09>Zejd
<EFBFBD>Zdd e e
zd ede
fd <0A>ZdZde
defd<0F>Zd e e
zde fd<10>Zy)zIPv6 helper functions.<2E>N)<01>Listz 0+([0-9a-f]+)<29>address<73>returnc<00><><00>t|<00>dk7r td<02><00>tj|<00>}g}d}t|<01>}||krZ|||dzj <00>}t
j |<05>}|<06>|jd<06>}|j|<05>|dz }||kr<01>Zd}d}d} d}
td <09>D]'}||d
k7r|
s<01>|} | | z
} | |kDr| }| }d}
<EFBFBD>!|
r<01>$|} d }
<EFBFBD>)|
rd } | | z
} | |kDr| }| }|dkDry|dk(rC|d k(s |d k(r9|d dk(r1|d k(rd} nd} | tjj|dd<00>z}|Sdj|d|<00>dzdj|||zd<00>z}|Sdj|<02>}|S)z<>Convert an IPv6 address in binary form to text form.
*address*, a ``bytes``, the IPv6 address in binary form.
Raises ``ValueError`` if the address isn't 16 bytes long.
Returns a ``str``.
<20>z IPv6 addresses are 16 bytes longr<00>N<><00><><EFBFBD><EFBFBD><EFBFBD>F<EFBFBD><00>0T<30><00><00>ffffz::z::ffff:<3A> <00>:)<0E>len<65>
ValueError<EFBFBD>binascii<69>hexlify<66>decode<64> _leading_zero<72>match<63>group<75>append<6E>range<67>dns<6E>ipv4<76> inet_ntoa<6F>join)r<00>hex<65>chunks<6B>i<>l<>chunk<6E>m<>
best_start<EFBFBD>best_len<65>start<72> last_was_zero<72>end<6E> current_len<65>prefix<69>thexs <20>7E:\Project\pygoedge\.venv\Lib\site-packages\dns/ipv6.pyrrs<><00><00> <0B>7<EFBFBD>|<7C>r<EFBFBD><19><18>;<3B><<3C><<3C>
<12>
<1A>
<1A>7<EFBFBD>
#<23>C<EFBFBD> <0F>F<EFBFBD> <09>A<EFBFBD> <0B>C<EFBFBD><08>A<EFBFBD>
<0B>a<EFBFBD>%<25><13>A<EFBFBD><01>A<EFBFBD><05><0E>%<25>%<25>'<27><05> <1A> <1F> <1F><05> &<26><01> <0C>=<3D><15>G<EFBFBD>G<EFBFBD>A<EFBFBD>J<EFBFBD>E<EFBFBD><0E> <0A> <0A>e<EFBFBD><1C> <09>Q<EFBFBD><06><01> <0C>a<EFBFBD>%<25><13>J<EFBFBD><10>H<EFBFBD> <0E>E<EFBFBD><19>M<EFBFBD> <12>1<EFBFBD>X<EFBFBD><01> <11>!<21>9<EFBFBD><03> <1B><1C><17><03>!<21>E<EFBFBD>k<EFBFBD> <0B><1E><18>)<29>!&<26>J<EFBFBD>*<2A>H<EFBFBD> %<25> <0A><1E><15>E<EFBFBD> <20>M<EFBFBD><16><15><0F><03><19>E<EFBFBD>k<EFBFBD> <0B> <16><18> !<21><1E>J<EFBFBD>"<22>H<EFBFBD><0F>!<21>|<7C> <15><11>?<3F><08>A<EFBFBD> <0A><18>Q<EFBFBD><1D>6<EFBFBD>!<21>9<EFBFBD>PV<50>CV<43><17>1<EFBFBD>}<7D><1D><06>"<22><06><19>C<EFBFBD>H<EFBFBD>H<EFBFBD>.<2E>.<2E>w<EFBFBD>r<EFBFBD>s<EFBFBD>|<7C><<3C><<3C>D<EFBFBD> <10>K<EFBFBD> <14><08><08><16> <0B><1A>,<2C>-<2D><16><17><15>(<28>(<28>6<EFBFBD>*<2A>x<EFBFBD>"7<>"9<>:<3A>;<3B><<3C> <11> <10>K<EFBFBD><13>x<EFBFBD>x<EFBFBD><06><1F><04> <0F>K<EFBFBD>s(.*):(\d+\.\d+\.\d+\.\d+)$s::.*s.*::$<24>text<78> ignore_scopec<00>Z<00>t|t<00>s|j<00>}n|}|rF|jd<01>}t |<03>}|dk(r|d}n|dkDrt
j j<00>|dk(rt
j j<00>|jd<05>r+|jd<06>st
j j<00>|jd<05>r+|jd<06>st
j j<00>|dk(rd}tj|<02>}|<05>wt
jj|jd<02><00>}|jd <09>j<00><00>d
|dd <0B>|d d <0B>d
|dd <0B>|d d <0B><04>j<00>}t j|<02>}|<05>|d d}nt"j|<02>}|<05>|dd }|jd<05>}t |<07>}|dkDrt
j j<00>d}g} |D]<5D>}
|
dk(rG|rt
j j<00>d}t%dd|z
d z<00>D]} | j'd<11><00><00>Ot |
<EFBFBD>} | dkDrt
j j<00>| dk7r dd| z
z|
z}
| j'|
<EFBFBD><00><>|dkr|st
j j<00>dj)| <09>} t+j,|<02>S#t*j.t0f$rt
j j<00>wxYw)a+Convert an IPv6 address in text form to binary form.
*text*, a ``str`` or ``bytes``, the IPv6 address in textual form.
*ignore_scope*, a ``bool``. If ``True``, a scope will be ignored.
If ``False``, the default, it is an error for a scope to be present.
Returns a ``bytes``.
<20>%<25>rr/<00>:s::s0::Nr r<00>02x<32>r
r FTs0000r<00>0)<19>
isinstance<EFBFBD>bytes<65>encode<64>splitrr<00> exception<6F> SyntaxError<6F>endswith<74>
startswith<EFBFBD>
_v4_endingrr<00> inet_atonrr<00>_colon_colon_start<72>_colon_colon_endrrrr<00> unhexlify<66>Error<6F> TypeError) r0r1<00>btext<78>partsr#r%<00>br!<00>
seen_empty<EFBFBD> canonical<61>c<>_<>lcs r.rBrBhs<><00><00> <16>d<EFBFBD>E<EFBFBD> "<22><14> <0B> <0B> <0A><05><14><05><13><15> <0B> <0B>D<EFBFBD>!<21><05> <0F><05>J<EFBFBD><01> <0C><01>6<EFBFBD><19>!<21>H<EFBFBD>E<EFBFBD> <0E><11>U<EFBFBD><15>-<2D>-<2D>+<2B>+<2B> +<2B> <0C><03>|<7C><11>m<EFBFBD>m<EFBFBD>'<27>'<27>'<27> <0E><1E><1E><04> <1D>e<EFBFBD>n<EFBFBD>n<EFBFBD>U<EFBFBD>&;<3B><11>m<EFBFBD>m<EFBFBD>'<27>'<27>'<27> <0E> <19> <19>$<24> <1F><05>(8<>(8<><15>(?<3F><11>m<EFBFBD>m<EFBFBD>'<27>'<27>'<27> <0E>%<25><1E><16><05> <13><18><18><15><1F>A<EFBFBD><08>}<7D> <0F>H<EFBFBD>H<EFBFBD> <1E> <1E>q<EFBFBD>w<EFBFBD>w<EFBFBD>q<EFBFBD>z<EFBFBD> *<2A><01><10>w<EFBFBD>w<EFBFBD>q<EFBFBD>z<EFBFBD> <20> <20>"<22>#<23>1<EFBFBD>Q<EFBFBD>q<EFBFBD>T<EFBFBD>#<23>J<EFBFBD>q<EFBFBD><11>t<EFBFBD>C<EFBFBD>j<EFBFBD><01>!<21>A<EFBFBD>$<24>s<EFBFBD><1A>A<EFBFBD>a<EFBFBD>D<EFBFBD><13>:<3A> N<>
<10>&<26>(<28> <0E> <1B> <20> <20><15>'<27>A<EFBFBD><08>}<7D><15>a<EFBFBD>b<EFBFBD> <09><05> <1C> "<22> "<22>5<EFBFBD> )<29><01> <0C>=<3D><19>#<23>2<EFBFBD>J<EFBFBD>E<EFBFBD><13>[<5B>[<5B><14> <1E>F<EFBFBD> <0B>F<EFBFBD> <0B>A<EFBFBD><08>1<EFBFBD>u<EFBFBD><11>m<EFBFBD>m<EFBFBD>'<27>'<27>'<27><16>J<EFBFBD><1F>I<EFBFBD> <13><01> <0C><03>8<EFBFBD><19><19>m<EFBFBD>m<EFBFBD>/<2F>/<2F>/<2F><1D>J<EFBFBD><1A>1<EFBFBD>a<EFBFBD>!<21>e<EFBFBD>a<EFBFBD>i<EFBFBD>(<28><01><19> <20> <20><17>)<29>)<29><15>Q<EFBFBD><16>B<EFBFBD><11>A<EFBFBD>v<EFBFBD><19>m<EFBFBD>m<EFBFBD>/<2F>/<2F>/<2F><11>Q<EFBFBD>w<EFBFBD><19>Q<EFBFBD><12>V<EFBFBD>_<EFBFBD><01>)<29><01> <15> <1C> <1C>Q<EFBFBD> <1F><14> <09>1<EFBFBD>u<EFBFBD>Z<EFBFBD><11>m<EFBFBD>m<EFBFBD>'<27>'<27>'<27> <0F>H<EFBFBD>H<EFBFBD>Y<EFBFBD> <1F>E<EFBFBD>
(<28><17>!<21>!<21>%<25>(<28>(<28><> <14>N<EFBFBD>N<EFBFBD>I<EFBFBD> &<26>(<28><11>m<EFBFBD>m<EFBFBD>'<27>'<27>'<27>(<28>s <00>!K6<00>64L*s <00><>c<00>,<00>|jt<00>S)z<>Is the specified address a mapped IPv4 address?
*address*, a ``bytes`` is an IPv6 address in binary form.
Returns a ``bool``.
)r@<00>_mapped_prefix)rs r.<00> is_mappedrR<00>s<00><00> <13> <1D> <1D>n<EFBFBD> -<2D>-r/c<00>*<00>tt|<00><00>S)aVerify that *address* is a valid text form IPv6 address and return its
canonical text form. Addresses with scopes are rejected.
*text*, a ``str`` or ``bytes``, the IPv6 address in textual form.
Raises ``dns.exception.SyntaxError`` if the text is not valid.
)rrB)r0s r.<00> canonicalizerT<00>s<00><00> <15>Y<EFBFBD>t<EFBFBD>_<EFBFBD> %<25>%r/)F)<15>__doc__r<00>re<72>typingr<00> dns.exceptionr<00>dns.ipv4<76>compilerr:<00>strrrArCrD<00>boolrBrQrRrT<00>r/r.<00><module>r^s<><00><01>$<1D><0F> <09><17><14><0F><1A><02>
<EFBFBD>
<EFBFBD>+<2B>,<2C> <0A>B<10>u<EFBFBD>B<10><13>B<10>J<18>R<EFBFBD>Z<EFBFBD>Z<EFBFBD>6<> 7<>
<EFBFBD><1F>R<EFBFBD>Z<EFBFBD>Z<EFBFBD><08>)<29><12><1D>2<EFBFBD>:<3A>:<3A>i<EFBFBD>(<28><10>X(<28>C<EFBFBD>%<25>K<EFBFBD>X(<28>t<EFBFBD>X(<28><05>X(<28>v,<2C><0E>.<2E>u<EFBFBD>.<2E><14>.<2E>&<26>s<EFBFBD>U<EFBFBD>{<7B>&<26>s<EFBFBD>&r/