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

112 lines
15 KiB
Plaintext
Raw Normal View History

2025-11-18 03:36:49 +08:00
<EFBFBD>
g<> iE5<00><00>4<00>ddlmZmZmZmZddlZddlZddlZddl Zddl
Zddl Zddl Zddl ZddlZddlZddlZddlZddlZddlZddlZddlZddlZGd<03>dej.j0<00>ZGd<05>dej.j4<00>ZGd<07>dej.j0<00>ZGd <09>d
<EFBFBD>Zddddddddej<j>f d ej@jBd e"dzd e"e#zdzde"dzde"dzde"dzdeejHjJdzdedejLjNdzdejLjNe(zdeejRjTe"dzffd<16>Z+dejRjXde"dzfd<18>Z-y)<19>)<04>Any<6E>List<73>Tuple<6C>castNc<00>"<00><00>eZdZdZ<03>fd<02>Z<04>xZS)<03> TransferErrorz.A zone transfer response got a non-zero rcode.c<00>v<00><01>dtjj|<01><00><00>}t<00>|<00>|<02>||_y)NzZone transfer error: )<05>dns<6E>rcode<64>to_text<78>super<65>__init__)<04>selfr <00>message<67> __class__s <20><>6E:\Project\pygoedge\.venv\Lib\site-packages\dns/xfr.pyrzTransferError.__init__*s3<00><><00>)<29>#<23>)<29>)<29>*;<3B>*;<3B>E<EFBFBD>*B<>)C<>D<><07> <0A><07><18><17>!<21><1A><04>
<EFBFBD>)<06>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__doc__r<00> __classcell__)rs@rrr's<00><><00>8<><1B>rrc<00><00>eZdZdZy)<03>SerialWentBackwardsz:The current serial number is less than the serial we know.N<>rrrr<00>rrrr0s<00><00>Drrc<00><00>eZdZdZy)<03>UseTCPz'This IXFR cannot be completed with UDP.Nrrrrrr4s<00><00>1rrc <00><><00>eZdZdZej
j ddfdejjdej
jde
dzde fd<08>Z d ejjd
e fd <0B>Zd <0C>Zd <0A>Zy)<0E>Inboundz+
State machine for zone transfers.
NF<4E> txn_manager<65>rdtype<70>serial<61>is_udpc<00><><00>||_d|_||_|tjj
k(r|<03> t d<02><00>d|_n=|tjjk(r|r t d<04><00>d|_n t d<06><00>||_ ||_
|j<00>\}}|_ d|_ d|_d|_d|_y)aqInitialize an inbound zone transfer.
*txn_manager* is a :py:class:`dns.transaction.TransactionManager`.
*rdtype* can be `dns.rdatatype.AXFR` or `dns.rdatatype.IXFR`
*serial* is the base serial number for IXFRs, and is required in
that case.
*is_udp*, a ``bool`` indidicates if UDP is being used for this
XFR.
Nz,a starting serial must be supplied for IXFRsTzis_udp specified for AXFRFzrdtype is not IXFR or AXFR)r!<00>txnr"r
<00> rdatatype<70>IXFR<46>
ValueError<EFBFBD> incremental<61>AXFRr#r$<00>origin_information<6F>origin<69> soa_rdataset<65>done<6E> expecting_SOA<4F> delete_mode)rr!r"r#r$<00>_s rrzInbound.__init__=s<><00><00>&'<27><04><18>7;<3B><04><08><1C><04> <0B> <11>S<EFBFBD>]<5D>]<5D>'<27>'<27> '<27><15>~<7E> <20>!O<>P<>P<>#<23>D<EFBFBD> <1C> <13>s<EFBFBD>}<7D>}<7D>)<29>)<29> )<29><15> <20>!<<3C>=<3D>=<3D>$<24>D<EFBFBD> <1C><1C>9<>:<3A> :<3A><1C><04> <0B><1C><04> <0B>)<29><<3C><<3C>><3E><1B><11>A<EFBFBD>t<EFBFBD>{<7B>:><3E><04><19><19><04> <09>"<22><04><1A> <20><04>rr<00>returnc<00><> <00>|j<00>+|jj|j <00>|_|j <00>}|t
jj k7r t|<02><00>t|j<00>dkDr<>|jdj|jk7rt
jjd<03><00>|jdj|jk7rt
jjd<04><00>d}|j<00><01><>|j r&|j dj|jk7rt
jjd<05><00>|j d}|}|jt
j"j$k7rt
jjd<06><00>d}|j'<00>|_|jr<>|j<00>J<00>t)t
j*j,j$j$|jd<00>}|j.|j.k(rd|_npt
j.j3|j.<00>|j.krt4<00>|j6r!t|j |d<00>dk(rt8<00>d|_|j |dD<00>]9}|j}|}|j0rt
jjd <09><00>|j<00>J<00>|jt
j"j$k(<00>r&||jk(<00>r|jr|j< |_||jk(<00>r|jr |j<r<>t)t
j*j,j$j$|d<00>}|j:rt
jjd
<EFBFBD><00>|jr8|j.|j.k7rt
jjd <0B><00>|jj?||<05>|jjA<00>d|_d|_n<>d |_t)t
j*j,j$j$|d<00>}|jrr|j<r8|j.|j.k7rlt
jjd <0A><00>|j.|_|jj?||<05>nt
jjd<0E><00><01><02><>|j:rOd |_d |_d |_|jjC<00>|jjd<08>|_|j<r|jjE||<05><00><03>|jjG||<05><00><03><|j6r+|j0st
jjd<0F><00>|j0S)aZProcess one message in the transfer.
The message should have the same relativization as was specified when
the `dns.xfr.Inbound` was created. The message should also have been
created with `one_rr_per_rrset=True` because order matters.
Returns `True` if the transfer is complete, and `False` otherwise.
Nrzwrong question namezwrong question rdatatypez&No answer or RRset not for zone originzfirst RRset is not an SOA<4F>Tzanswers after final SOAzempty IXFR sequencezunexpected end of IXFR sequenceFzIXFR base serial mismatchzunexpected origin SOA in AXFRzunexpected end of UDP IXFR)$r&r!<00>writerr*r r
<00>NOERRORr<00>len<65>question<6F>namer-<00> exception<6F> FormErrorr"r.<00>answerr'<00>SOA<4F>copyr<00>rdtypes<65>ANYr#r/<00>Serialrr$rr0r1<00>replace<63>commit<69>rollback<63> delete_exact<63>add)rrr <00> answer_index<65>rrset<65>rdataset<65>soar:s r<00>process_messagezInbound.process_messagees<><00><00> <10>8<EFBFBD>8<EFBFBD> <1B><1B>'<27>'<27>.<2E>.<2E>4<EFBFBD>3C<33>3C<33>/C<>D<>D<EFBFBD>H<EFBFBD><17> <0A> <0A><0F><05> <10>C<EFBFBD>I<EFBFBD>I<EFBFBD>%<25>%<25> %<25><1F><05>&<26> &<26>
<0F>w<EFBFBD><1F><1F> <20>1<EFBFBD> $<24><16><1F><1F><01>"<22>'<27>'<27>4<EFBFBD>;<3B>;<3B>6<><19>m<EFBFBD>m<EFBFBD>-<2D>-<2D>.C<>D<>D<><16><1F><1F><01>"<22>)<29>)<29>T<EFBFBD>[<5B>[<5B>8<><19>m<EFBFBD>m<EFBFBD>-<2D>-<2D>.H<>I<>I<><18> <0C> <0F> <1C> <1C> $<24>
<1B>><3E>><3E>W<EFBFBD>^<5E>^<5E>A<EFBFBD>%6<>%;<3B>%;<3B>t<EFBFBD>{<7B>{<7B>%J<><19>m<EFBFBD>m<EFBFBD>-<2D>-<2D>.V<>W<>W<><1B>N<EFBFBD>N<EFBFBD>1<EFBFBD>%<25>E<EFBFBD><1C>H<EFBFBD><17><EFBFBD><EFBFBD>#<23>-<2D>-<2D>"3<>"3<>3<><19>m<EFBFBD>m<EFBFBD>-<2D>-<2D>.I<>J<>J<><1C>L<EFBFBD> (<28> <0A> <0A><0F>D<EFBFBD> <1D><13><1F><1F><1B>(<28>(<28>4<>4<>4<><1A>3<EFBFBD>;<3B>;<3B>?<3F>?<3F>.<2E>.<2E>2<>2<>D<EFBFBD>4E<34>4E<34>a<EFBFBD>4H<34>I<><03><16>:<3A>:<3A><14><1B><1B>,<2C>!%<25>D<EFBFBD>I<EFBFBD><18>Z<EFBFBD>Z<EFBFBD>&<26>&<26>s<EFBFBD>z<EFBFBD>z<EFBFBD>2<>T<EFBFBD>[<5B>[<5B>@<40>-<2D>-<2D><1B>{<7B>{<7B>s<EFBFBD>7<EFBFBD>><3E>><3E>,<2C>-<2D>+H<>'I<>Q<EFBFBD>'N<>
%<25> <0C>
*.<2E>D<EFBFBD>&<26>
<1D>^<5E>^<5E>L<EFBFBD>M<EFBFBD>2<>E<EFBFBD><18>:<3A>:<3A>D<EFBFBD><1C>H<EFBFBD><13>y<EFBFBD>y<EFBFBD><19>m<EFBFBD>m<EFBFBD>-<2D>-<2D>.G<>H<>H<><17>8<EFBFBD>8<EFBFBD>'<27> '<27>'<27><17><EFBFBD><EFBFBD>#<23>-<2D>-<2D>"3<>"3<>3<><04><04> <0B> <0B>8K<38><18>#<23>#<23>+/<2F>+;<3B>+;<3B>';<3B>D<EFBFBD>$<24><1C>t<EFBFBD>0<>0<>0<><1D>)<29>)<29>d<EFBFBD>.><3E>.><3E>
<1F>s<EFBFBD>{<7B>{<7B><EFBFBD><EFBFBD>2<>2<>6<>6<><08><11> <0B>D<>C<EFBFBD><1B>)<29>)<29>!<21>m<EFBFBD>m<EFBFBD>5<>5<>6K<36>L<>L<><1B>'<27>'<27>D<EFBFBD>K<EFBFBD>K<EFBFBD>3<EFBFBD>:<3A>:<3A>,E<>!<21>m<EFBFBD>m<EFBFBD>5<>5<>6W<36>X<>X<><18>H<EFBFBD>H<EFBFBD>$<24>$<24>T<EFBFBD>8<EFBFBD>4<><18>H<EFBFBD>H<EFBFBD>O<EFBFBD>O<EFBFBD>%<25>#<23>D<EFBFBD>H<EFBFBD> $<24>D<EFBFBD>I<EFBFBD>
*/<2F>D<EFBFBD>&<26><1E>s<EFBFBD>{<7B>{<7B><EFBFBD><EFBFBD>2<>2<>6<>6<><08><11> <0B>D<>C<EFBFBD><1B>'<27>'<27><1F>+<2B>+<2B>"<22>z<EFBFBD>z<EFBFBD>T<EFBFBD>[<5B>[<5B>8<>&)<29>m<EFBFBD>m<EFBFBD>&=<3D>&=<3D>$?<3F>'"<22>!"<22>
+.<2E>*<2A>*<2A>D<EFBFBD>K<EFBFBD> <20>H<EFBFBD>H<EFBFBD>,<2C>,<2C>T<EFBFBD>8<EFBFBD><<3C>"<22>m<EFBFBD>m<EFBFBD>5<>5<>6U<36>V<>V<><18><13>!<21>!<21> $)<29><04> <20>%*<2A><04>"<22>#(<28><04> <20><14><08><08>!<21>!<21>#<23><1F>+<2B>+<2B>2<>2<>4<EFBFBD>8<><04><08> <14><1F><1F><14><08><08>%<25>%<25>d<EFBFBD>H<EFBFBD>5<><14><08><08> <0C> <0C>T<EFBFBD>8<EFBFBD>,<2C>U3<>V <10>;<3B>;<3B>t<EFBFBD>y<EFBFBD>y<EFBFBD>
<16>-<2D>-<2D>)<29>)<29>*F<>G<> G<><13>y<EFBFBD>y<EFBFBD>rc<00><00>|S)Nr)rs r<00> __enter__zInbound.__enter__<5F>s<00><00><13> rc<00>P<00>|jr|jj<00>y)NF)r&rE)r<00>exc_type<70>exc_val<61>exc_tbs r<00>__exit__zInbound.__exit__<5F>s<00><00> <0F>8<EFBFBD>8<EFBFBD> <10>H<EFBFBD>H<EFBFBD> <1D> <1D> <1F>r)rrrrr
r'r+<00> transaction<6F>TransactionManager<65> RdataType<70>int<6E>boolrr<00>MessagerLrNrSrrrr r 8s<><00><00><08>+.<2E>-<2D>-<2D>*<<3C>*<<3C>!<21><1C> &!<21><18>_<EFBFBD>_<EFBFBD>7<>7<>&!<21><14> <0A> <0A>'<27>'<27>&!<21><14>d<EFBFBD>
<EFBFBD> &!<21>
<15> &!<21>PQ<19>s<EFBFBD>{<7B>{<7B>':<3A>':<3A>Q<19>t<EFBFBD>Q<19>n<14>rr r!r#<00>use_edns<6E> ednsflags<67>payload<61>request_payload<61>options<6E>keyring<6E>keyname<6D> keyalgorithmr3c
<00><00>|j<00>\}
} } |
<EFBFBD> td<02><00>|<01>tjj} n<>t |t <00>s td<03><00>|dk(r<>|j<00>5}|j| d<05>}|rbttjjjj|d<00>}|j}tjj} nd}tjj} ddd<01>n0|dkDr |dkrtjj} n td<07><00>|j<00>}tj j#|
 ||d||||<06> }|<01>otj$j'|dd |<01>d
<EFBFBD><03>}|j)|j*|
|tjjd <0B> <0C>}|j-|d<04>|<07>|j/||| <09> <0A>||fS#1swY<00><>xYw)aMake an AXFR or IXFR query.
*txn_manager* is a ``dns.transaction.TransactionManager``, typically a
``dns.zone.Zone``.
*serial* is an ``int`` or ``None``. If 0, then IXFR will be
attempted using the most recent serial number from the
*txn_manager*; it is the caller's responsibility to ensure there
are no write transactions active that could invalidate the
retrieved serial. If a serial cannot be determined, AXFR will be
forced. Other integer values are the starting serial to use.
``None`` forces an AXFR.
Please see the documentation for :py:func:`dns.message.make_query` and
:py:func:`dns.message.Message.use_tsig` for details on the other parameters
to this function.
Returns a `(query, serial)` tuple.
Nzno zone originzserial is not an integerrr>lzserial out-of-rangeFz. . z 0 0 0 0T)<01>create)<01> algorithm)r,r)r
r'r+<00>
isinstancerW<00>reader<65>getrr@rAr>r#r(<00> get_classr<00>
make_query<EFBFBD>rdata<74> from_text<78>
find_rrset<EFBFBD> authorityrG<00>use_tsig)r!r#rZr[r\r]r^r_r`ra<00> zone_originr2r-r"r&rJrK<00>rdclass<73>qrjrIs rriris<><00><00>> +<2B>=<3D>=<3D>?<3F><1C>[<5B>!<21>V<EFBFBD><12><1A><18>)<29>*<2A>*<2A> <0A>~<7E><14><1D><1D>#<23>#<23><06> <17><06><03> $<24><18>3<>4<>4<> <0F>1<EFBFBD><1B> <18> <1F> <1F> !<21>S<EFBFBD><1A>w<EFBFBD>w<EFBFBD>v<EFBFBD>u<EFBFBD>-<2D>H<EFBFBD><17><1A>3<EFBFBD>;<3B>;<3B>?<3F>?<3F>.<2E>.<2E>2<>2<>H<EFBFBD>Q<EFBFBD>K<EFBFBD>@<40><03><1C><1A><1A><06><1C><1D><1D>+<2B>+<2B><06><1D><06><1C><1D><1D>+<2B>+<2B><06>"<22> !<21>
<10>!<21><1A><06><1A>+<2B><14><1D><1D>#<23>#<23><06><18>.<2E>/<2F>/<2F><19>#<23>#<23>%<25>G<EFBFBD> <0B> <0B> <0B><1E><1E><13><0E><0F><10> <0A><11><0F><17><0F>
<06>A<EFBFBD><0E><19><13> <09> <09>#<23>#<23>G<EFBFBD>U<EFBFBD>d<EFBFBD>6<EFBFBD>(<28>(<28>4K<34>L<><05><11> <0C> <0C> <0A>K<EFBFBD>K<EFBFBD><1B>g<EFBFBD>s<EFBFBD>}<7D>}<7D>/@<40>/@<40><14><1D>
<EFBFBD><05> <0E> <09> <09>%<25><11><1B><0E><1A> <09>
<EFBFBD>
<EFBFBD>7<EFBFBD>G<EFBFBD>|<7C>
<EFBFBD><<3C> <0A>v<EFBFBD>;<3B><16>C"<22> !<21>s <00>/BG=<03>=H<07>queryc<00>T<00>t|tjj<00>s t d<01><00>|j
d}|j tjjk(ry|j tjjk7r t d<04><00>|j|j|j|jtjj<00>}ttj j"jj|d<00>}|j$S)a7Extract the SOA serial number from query if it is an IXFR and return
it, otherwise return None.
*query* is a dns.message.QueryMessage that is an IXFR or AXFR request.
Raises if the query is not an IXFR or AXFR, or if an IXFR doesn't have
an appropriate SOA RRset in the authority section.
zquery not a QueryMessagerNzquery is not an AXFR or IXFR)rer
r<00> QueryMessager)r9r"r'r+r(rlrmr:rpr>rr@rAr#)rrr9<00> soa_rrsetrKs r<00>extract_serial_from_queryrvPs<><00><00> <16>e<EFBFBD>S<EFBFBD>[<5B>[<5B>5<>5<> 6<><18>3<>4<>4<><14>~<7E>~<7E>a<EFBFBD> <20>H<EFBFBD><0F><EFBFBD><EFBFBD>#<23>-<2D>-<2D>,<2C>,<2C>,<2C><13> <11><1F><1F>C<EFBFBD>M<EFBFBD>M<EFBFBD>.<2E>.<2E> .<2E><18>7<>8<>8<><15> <20> <20> <0A><0F><0F><18><1D><1D><08>(8<>(8<>#<23>-<2D>-<2D>:K<>:K<><06>I<EFBFBD> <0F>s<EFBFBD>{<7B>{<7B><EFBFBD><EFBFBD>"<22>"<22>&<26>&<26> <09>!<21> <0C>
5<EFBFBD>C<EFBFBD> <0E>:<3A>:<3A>r).<2E>typingrrrr<00>dns.ednsr
<00> dns.exception<6F> dns.message<67>dns.name<6D> dns.rcode<64> dns.rdata<74> dns.rdataset<65> dns.rdatatype<70> dns.rdtypes<65>dns.rdtypes.ANY<4E>dns.rdtypes.ANY.SMIMEA<45>dns.rdtypes.ANY.SOA<4F>dns.rdtypes.svcbbase<73>
dns.serial<61>dns.transaction<6F>dns.tsig<69>dns.zoner;<00> DNSExceptionrr<rrr <00>tsig<69>default_algorithmrTrUrWrX<00>edns<6E>Optionr:<00>Name<6D>strrrtrirYrvrrr<00><module>r<>s<><00><01>$*<2A>)<29><0F><14><12><0F><10><10><13><14><12><16><1D><1A><1B><11><16><0F><0F><1B>C<EFBFBD>M<EFBFBD>M<EFBFBD>.<2E>.<2E><1B>E<01>#<23>-<2D>-<2D>1<>1<>E<01>2<>S<EFBFBD>]<5D>]<5D> '<27> '<27>2<>J<15>J<15>^<1B>"&<26> <20><1E>"&<26>,0<><17>$(<28>(+<2B><08><08>(B<>(B<>H<17><14><1F><1F>3<>3<>H<17> <0F>$<24>J<EFBFBD>H<17><12>D<EFBFBD>j<EFBFBD>4<EFBFBD><1F>H<17><13>T<EFBFBD>z<EFBFBD> H<17>
<11>4<EFBFBD>Z<EFBFBD> H<17> <19>4<EFBFBD>Z<EFBFBD> H<17><12>#<23>(<28>(<28>/<2F>/<2F> "<22>T<EFBFBD> )<29>H<17><11>H<17><11>X<EFBFBD>X<EFBFBD>]<5D>]<5D>T<EFBFBD> !<21>H<17><16>(<28>(<28>-<2D>-<2D>#<23>%<25>H<17> <0B>3<EFBFBD>;<3B>;<3B> #<23> #<23>S<EFBFBD>4<EFBFBD>Z<EFBFBD> /<2F>0<>H<17>V<16>S<EFBFBD>[<5B>[<5B>%8<>%8<><16>S<EFBFBD>4<EFBFBD>Z<EFBFBD>r