/usr/lib/rads/venv/lib/python3.13/site-packages/dns/__pycache__
NameSizeModeActions
asyncbackend.cpython-313.pyc34550644editdlrm
asyncquery.cpython-313.pyc376610644editdlrm
asyncresolver.cpython-313.pyc208710644editdlrm
dnssec.cpython-313.pyc514610644editdlrm
dnssectypes.cpython-313.pyc20700644editdlrm
e164.cpython-313.pyc48490644editdlrm
edns.cpython-313.pyc258940644editdlrm
entropy.cpython-313.pyc61100644editdlrm
enum.cpython-313.pyc49300644editdlrm
exception.cpython-313.pyc74740644editdlrm
flags.cpython-313.pyc30980644editdlrm
grange.cpython-313.pyc17750644editdlrm
immutable.cpython-313.pyc38280644editdlrm
inet.cpython-313.pyc65810644editdlrm
ipv4.cpython-313.pyc27190644editdlrm
ipv6.cpython-313.pyc69210644editdlrm
message.cpython-313.pyc859310644editdlrm
name.cpython-313.pyc490600644editdlrm
namedict.cpython-313.pyc43540644editdlrm
nameserver.cpython-313.pyc147060644editdlrm
node.cpython-313.pyc163490644editdlrm
opcode.cpython-313.pyc31400644editdlrm
query.cpython-313.pyc645170644editdlrm
rcode.cpython-313.pyc44530644editdlrm
rdata.cpython-313.pyc386500644editdlrm
rdataclass.cpython-313.pyc35370644editdlrm
rdataset.cpython-313.pyc226570644editdlrm
rdatatype.cpython-313.pyc102390644editdlrm
renderer.cpython-313.pyc159450644editdlrm
resolver.cpython-313.pyc880070644editdlrm
reversename.cpython-313.pyc46930644editdlrm
rrset.cpython-313.pyc123170644editdlrm
serial.cpython-313.pyc54210644editdlrm
set.cpython-313.pyc121210644editdlrm
tokenizer.cpython-313.pyc265250644editdlrm
transaction.cpython-313.pyc288830644editdlrm
tsig.cpython-313.pyc171680644editdlrm
tsigkeyring.cpython-313.pyc28710644editdlrm
ttl.cpython-313.pyc25350644editdlrm
update.cpython-313.pyc161190644editdlrm
version.cpython-313.pyc7620644editdlrm
versioned.cpython-313.pyc148000644editdlrm
win32util.cpython-313.pyc99290644editdlrm
wire.cpython-313.pyc55500644editdlrm
xfr.cpython-313.pyc146710644editdlrm
zone.cpython-313.pyc662180644editdlrm
zonefile.cpython-313.pyc343180644editdlrm
zonetypes.cpython-313.pyc14160644editdlrm
_asyncbackend.cpython-313.pyc49850644editdlrm
_asyncio_backend.cpython-313.pyc145780644editdlrm
_ddr.cpython-313.pyc79590644editdlrm
_features.cpython-313.pyc32360644editdlrm
_immutable_ctx.cpython-313.pyc33350644editdlrm
_trio_backend.cpython-313.pyc137510644editdlrm
__init__.cpython-313.pyc7020644editdlrm
Edit: /usr/lib/rads/venv/lib/python3.13/site-packages/dns/__pycache__/renderer.cpython-313.pyc (15945B)
j+SrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSr Sr Sr Sr \RS5r"SS5rg) z*Help for building DNS wire format messagesNc## URSU-5 UR5nSv UR5nX2- nUS:aIURX!- 5 URURUS55 URU5 gg![a [ R Ref=f!URU5 f=f7f)Nrbig)writetellseekto_bytes OverflowErrordns exception FormError)output length_lengthstartendlengths ?/usr/lib/rads/venv/lib/python3.13/site-packages/dns/renderer.pyprefixed_lengthr#s LL-'( KKME ++-C [F z  KK- . . V__]EBC KK  ! .mm--- . KK s0AC B7!B<C %B44B77C  C c`\rSrSrSrSSjrSrSr\RS5r \RS5r \ RR4S jrS rS rSS jrSS jr\ R(R*4Sjr\ R(R*4SjrSrSrSrS\SS4SjrSSjrSrg)Renderer5a&Helper class for building DNS wire-format messages. Most applications can use the higher-level L{dns.message.Message} class and its to_wire() method to generate wire-format messages. This class is for those applications which need finer control over the generation of messages. Typical use:: r = dns.renderer.Renderer(id=1, flags=0x80, max_size=512) r.add_question(qname, qtype, qclass) r.add_rrset(dns.renderer.ANSWER, rrset_1) r.add_rrset(dns.renderer.ANSWER, rrset_2) r.add_rrset(dns.renderer.AUTHORITY, ns_rrset) r.add_rrset(dns.renderer.ADDITIONAL, ad_rrset_1) r.add_rrset(dns.renderer.ADDITIONAL, ad_rrset_2) r.add_edns(0, 0, 4096) r.write_header() r.add_tsig(keyname, secret, 300, 1, 0, '', request_mac) wire = r.get_wire() If padding is going to be used, then the OPT record MUST be written after everything else in the additional section except for the TSIG (if any). output, an io.BytesIO, where rendering is written id: the message id flags: the message flags max_size: the maximum size of the message origin: the origin to use when rendering relative names compress: the compression table section: an int, the section currently being rendered counts: list of the number of RRs in each section mac: the MAC of the rendered message (if TSIG was used) Nc>[R"5UlUc[R"SS5UlOXlX lX0lX@l0Ul [Ul /SQUl URRS5 SUlSUlSUlg)zInitialize a new renderer.Nr)rrrrs F)ioBytesIOrrandomrandintidflagsmax_sizeorigincompressQUESTIONsectioncountsr macreserved was_padded)selfr"r#r$r%s r__init__Renderer.__init__bsxjjl :nnQ.DGG     "  ,' cURRU5 URR5 /nURR 5Hup4XA:dM UR U5 M UHnURU M g)zTruncate the output buffer at offset *where*, and remove any compression table entries that pointed beyond the truncation point. N)rr truncater&itemsappend)r-wherekeys_to_deletekvs r _rollbackRenderer._rollbackuso  MM'')DAz%%a(* A a  r0cURU:wa1URU:a[RReXlgg)zSet the renderer's current section. Sections must be rendered order: QUESTION, ANSWER, AUTHORITY, ADDITIONAL. Sections may be empty. Raises dns.exception.FormError if an attempt was made to set a section value less than the current section. N)r(rrr)r-r(s r _set_sectionRenderer._set_sections6 <<7 "||g%mm---"L #r0c## URR5nUv URR5UR:a+URU5 [R R eg7fN)rr r$r9rrTooBig)r-rs r _track_sizeRenderer._track_sizesV   " ;;    - NN5 !--&& & .sA3A5c## URR5nURRU5 Sv URRU5 g!URRU5 f=f7fr?)rr r )r-r5currents r_temporarily_seek_toRenderer._temporarily_seek_tosU++""$ & KK  U #  KK  W %DKK  W %sA9AA9A66A9czUR[5 UR5 URURUR UR 5 URR[R"SX#55 SSS5 UR[==S- ss'g!,(df  N*=f)zAdd a question to the message.z!HHNr) r<r'rAto_wirerr&r%r structpackr))r-qnamerdtyperdclasss r add_questionRenderer.add_questions{ (#     MM$++t}}dkk B KK  fkk%A B  H" s A"B,, B:c URU5 UR5 UR"URURUR 40UD6nSSS5 UR U==W- ss'g!,(df  N&=f)zrAdd the rrset to the specified section. Any keyword arguments are passed on to the rdataset's to_wire() routine. Nr<rArHrr&r%r))r-r(rrsetkwns r add_rrsetRenderer.add_rrsetsc '"     dkk4==$++LLA  G!  4A66 Bc URU5 UR5 UR"X RURUR 40UD6nSSS5 UR U==W- ss'g!,(df  N&=f)zAdd the rdataset to the specified section, using the specified name as the owner name. Any keyword arguments are passed on to the rdataset's to_wire() routine. NrQ)r-r(namerdatasetrSrTs r add_rdatasetRenderer.add_rdatasetsf '"      {{DMM4;;URTUA  G! rWcU(aURnUS:deUSnURR5U-U-nXr-nU(aSX(- -nOSn[UR5n U R [ RR[ RRRU55 [ RRRXVRU 5nSUlUR!["U5 g)a-Add *opt* to the additional section, applying padding if desired. The padding will take the specified precomputed OPT size and TSIG size into account. Note that we don't have reliable way of knowing how big a GSS-TSIG digest might be, so we we might not get an even multiple of the pad in that case. rrr0TN)ttlrr listoptionsr4redns GenericOption OptionTypePADDINGmessageMessage _make_optrMr,rU ADDITIONAL) r-optpadopt_size tsig_sizer_ opt_rdatasize_without_padding remainderras radd_optRenderer.add_opts ''Cr> !>AI#';;#3#3#5#@9#L ,2I19,,-G NN38811#((2E2E2M2MsS T++%%//5F5FPC"DO z3'r0cUS-nX!S--n[RRRX#U5nUR U5 g)z&Add an EDNS OPT record to the message.l~N)rrfrgrhrq)r-rb ednsflagspayloadrarjs radd_ednsRenderer.add_ednssB Z RZ kk!!++IH Sr0c URR5n [U[RR 5(aUn O [RR XU5n [R RRXSUSXEU5n [RRXU S[[R"55U5upURX5 g)z$Add a TSIG signature to the message.rr0N rgetvalue isinstancertsigKeyrfrg _make_tsigsigninttime _write_tsig) r-keynamesecretfudger" tsig_error other_data request_mac algorithmskeyr}_s radd_tsigRenderer.add_tsigs KK " fchhll + +C((,,w :C{{""-- 5#rz HHMM!$q'3tyy{3C[Q  'r0c URR5n [U[RR 5(aUn O [RR X#U 5n [R RRX)SUSXVU5n [RRXU S[[R"55XS5upURX5 U$)aQAdd a TSIG signature to the message. Unlike add_tsig(), this can be used for a series of consecutive DNS envelopes, e.g. for a zone transfer over TCP [RFC2845, 4.4]. For the first message in the sequence, give ctx=None. For each subsequent message, give the ctx that was returned from the add_multi_tsig() call for the previous message.rr0Trz) r-ctxrrrr"rrrrrrr}s radd_multi_tsigRenderer.add_multi_tsigs( KK " fchhll + +C((,,w :C{{""-- 5#rz hhmm DGS-{  ' r0c vUR(aSnO URnUR[5 UR 5 UR UR X0R5 UR R[R"S[RR[RRS55 [!UR S5 UR UR 5 SSS5 SSS5 UR"[==S- ss'UR%S5 UR R[R"SUR"[55 SSS5 g!,(df  N=f!,(df  N=f!,(df  g=f)Nz!HHIrrr z!H)r,r&r<rirArHrr%r rIrJr rdatatypeTSIG rdataclassANYrr)rE)r-r}rr&s rrRenderer._write_tsig"s ??H}}H *%     OODKK;; ? KK   FCMM$6$68J8JAN !a0 T[[)1   J1$  & &r * KK  fkk$ J0GH I+ * 10  + *s2BF%FF=AF* F F F'* F8c TURS5 URR[R"SUR UR URSURSURSURS55 SSS5 g!,(df  g=f)zWrite the DNS message header. Writing the DNS message header is done after all sections have been rendered, but before the optional TSIG signature is added. rz!HHHHHHrrrN)rErr rIrJr"r#r)r-s r write_headerRenderer.write_header4sy & &q ) KK   GGJJKKNKKNKKNKKN * ) )s A>B B'c6URR5$)zReturn the wire format message.)rr{rs rget_wireRenderer.get_wireIs{{##%%r0sizereturncUS:a [S5eXR:a [S5eU=RU- slU=RU-slg)zReserve *size* bytes.rz$reserved amount must be non-negativez)cannot reserve more than the maximum sizeN) ValueErrorr$r+)r-rs rreserveRenderer.reserveNsG !8CD D -- HI I    r0cPU=RUR- slSUlg)zRelease the reserved bytes.rN)r$r+rs rrelease_reservedRenderer.release_reservedWs &  r0) r&r)r#r"r*r$r%rr+r(r,)NrrN)rrrr?)rN)__name__ __module__ __qualname____firstlineno____doc__r.r9r< contextlibcontextmanagerrArErrINrNrUr[rqrwr}default_algorithmrrrrrrrr__static_attributes__r0rrr5s*X & ! #''&&36..2C2C# " "(.$((,,(F((,,!FJ$*& CDr0r)rrrr rIr dns.exceptionrdns.tsigr'ANSWER AUTHORITYrirrrrr0rrsY$1      "eer0