uawdijnntqw1x1x1
IP : 52.14.255.122
Hostname : host45.registrar-servers.com
Kernel : Linux host45.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
jackpotjunglegam
/
..
/
..
/
lib64
/
gdk-pixbuf-2.0
/
..
/
python2.7
/
site-packages
/
.
/
dns
/
renderer.pyc
/
/
� w�Qc@s�dZddlZddlZddlZddlZddlZddlZdZdZ dZ dZdefd��YZ dS( s*Help for building DNS wire format messagesi����NiiiitRenderercBs�eZdZd ddd d�Zd�Zd�Zejj d�Z d�Zd�Zd d �Z ejjd �Zd�Zd�ZRS(stHelper 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_edns(0, 0, 4096) r.add_rrset(dns.renderer.ADDTIONAL, ad_rrset_1) r.add_rrset(dns.renderer.ADDTIONAL, ad_rrset_2) r.write_header() r.add_tsig(keyname, secret, 300, 1, 0, '', request_mac) wire = r.get_wire() @ivar output: where rendering is written @type output: cStringIO.StringIO object @ivar id: the message id @type id: int @ivar flags: the message flags @type flags: int @ivar max_size: the maximum size of the message @type max_size: int @ivar origin: the origin to use when rendering relative names @type origin: dns.name.Name object @ivar compress: the compression table @type compress: dict @ivar section: the section currently being rendered @type section: int (dns.renderer.QUESTION, dns.renderer.ANSWER, dns.renderer.AUTHORITY, or dns.renderer.ADDITIONAL) @ivar counts: list of the number of RRs in each section @type counts: int list of length 4 @ivar mac: the MAC of the rendered message (if TSIG was used) @type mac: string ii��cCs�tj�|_|dkr3tjdd�|_n ||_||_||_||_ i|_ t|_ddddg|_ |jjd�d|_dS(s�Initialize a new renderer. @param id: the message id @type id: int @param flags: the DNS message flags @type flags: int @param max_size: the maximum message size; the default is 65535. If rendering results in a message greater than I{max_size}, then L{dns.exception.TooBig} will be raised. @type max_size: int @param origin: the origin to use when rendering relative names @type origin: dns.name.Namem or None. ii��sitNs(t cStringIOtStringIOtoutputtNonetrandomtrandinttidtflagstmax_sizetorigintcompresstQUESTIONtsectiontcountstwritetmac(tselfRR R R((s2/usr/lib64/python2.7/site-packages/dns/renderer.pyt__init__Js cCs~|jj|�|jj�g}x9|jj�D](\}}||kr3|j|�q3q3Wx|D]}|j|=qfWdS(s�Truncate the output buffer at offset I{where}, and remove any compression table entries that pointed beyond the truncation point. @param where: the offset @type where: int N(RtseekttruncateRt iteritemstappend(Rtwheretkeys_to_deletetktv((s2/usr/lib64/python2.7/site-packages/dns/renderer.pyt _rollbackgs cCs=|j|kr9|j|kr-tjj�n||_ndS(sZSet the renderer's current section. Sections must be rendered order: QUESTION, ANSWER, AUTHORITY, ADDITIONAL. Sections may be empty. @param section: the section @type section: int @raises dns.exception.FormError: an attempt was made to set a section value less than the current section. N(Rtdnst exceptiont FormError(RR((s2/usr/lib64/python2.7/site-packages/dns/renderer.pyt_set_sectionyscCs�|jt�|jj�}|j|j|j|j�|jjtj d||��|jj�}||j kr�|j|�tj j�n|jtcd7<dS(sAdd a question to the message. @param qname: the question name @type qname: dns.name.Name @param rdtype: the question rdata type @type rdtype: int @param rdclass: the question rdata class @type rdclass: int s!HHiN(R R Rttelltto_wireRRRtstructtpackR RRRtTooBigR(Rtqnametrdtypetrdclasstbeforetafter((s2/usr/lib64/python2.7/site-packages/dns/renderer.pytadd_question�s cKs�|j|�|jj�}|j|j|j|j|�}|jj�}||jkrw|j|�tj j �n|j|c|7<dS(sAdd the rrset to the specified section. Any keyword arguments are passed on to the rdataset's to_wire() routine. @param section: the section @type section: int @param rrset: the rrset @type rrset: dns.rrset.RRset object N(R RR!R"RRR RRRR%R(RRtrrsettkwR)tnR*((s2/usr/lib64/python2.7/site-packages/dns/renderer.pyt add_rrset�s ! cKs�|j|�|jj�}|j||j|j|j|�}|jj�}||jkrz|j|�tj j �n|j|c|7<dS(s�Add 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. @param section: the section @type section: int @param name: the owner name @type name: dns.name.Name object @param rdataset: the rdataset @type rdataset: dns.rdataset.Rdataset object N(R RR!R"RRR RRRR%R(RRtnametrdatasetR-R)R.R*((s2/usr/lib64/python2.7/site-packages/dns/renderer.pytadd_rdataset�s c Cs |dM}||d>O}|jt�|jj�}|jjtjddtjj ||d��|d k r�|jj�}x�|D]�}tjd|jd�}|jj|�|jj�} |j|j�|jj�} | | dks�t �|jj| d�tjd| | �}|jj|�|jjdd�q�W|jj�}||dkslt �|jj|d�tjd||�}|jj|�|jjdd�n|jj�}||jkr�|j|�tjj�n|jtcd 7<d S(s�Add an EDNS OPT record to the message. @param edns: The EDNS level to use. @type edns: int @param ednsflags: EDNS flag values. @type ednsflags: int @param payload: The EDNS sender's payload field, which is the maximum size of UDP datagram the sender can handle. @type payload: int @param options: The EDNS options list @type options: list of dns.edns.Option instances @see: RFC 2671 l�~is!BHHIHis!HHiis!HiN(R t ADDITIONALRR!RR#R$Rt rdatatypetOPTRtotypeR"tAssertionErrorRR RRR%R( Rtednst ednsflagstpayloadtoptionsR)tlstarttopttstufftstarttendtlendR*((s2/usr/lib64/python2.7/site-packages/dns/renderer.pytadd_edns�s< ! c Cs�|jt�|jj�} |jj�} tjj| ||tt j ��|||||d|� \}|_ }|j|j|j|j �|jjtjdtjjtjjdd��|jj�} |jj|�|jj�}|| dkst�||jkr/|j| �tjj�n|jj| d�|jjtjd|| ��|jtcd7<|jjd�|jjtjd|jt��|jjdd�d S( s�Add a TSIG signature to the message. @param keyname: the TSIG key name @type keyname: dns.name.Name object @param secret: the secret to use @type secret: string @param fudge: TSIG time fudge @type fudge: int @param id: the message id to encode in the tsig signature @type id: int @param tsig_error: TSIG error code; default is 0. @type tsig_error: int @param other_data: TSIG other data. @type other_data: string @param request_mac: This message is a response to the request which had the specified MAC. @type request_mac: string @param algorithm: the TSIG algorithm to use @type algorithm: dns.name.Name object t algorithms!HHIHiiis!Hii N(R R3RR!tgetvalueRttsigtsigntintttimeRR"RRRR#R$R4tTSIGt rdataclasstANYR7R RRR%RR(RtkeynametsecrettfudgeRt tsig_errort other_datatrequest_macRCR)tst tsig_rdatatctxtrdata_startR*((s2/usr/lib64/python2.7/site-packages/dns/renderer.pytadd_tsig�s: #c Cst|jjd�|jjtjd|j|j|jd|jd|jd|jd��|jjdd�dS(s�Write 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. is!HHHHHHiiiN(RRRR#R$RR R(R((s2/usr/lib64/python2.7/site-packages/dns/renderer.pytwrite_header1s cCs |jj�S(s@Return the wire format message. @rtype: string (RRD(R((s2/usr/lib64/python2.7/site-packages/dns/renderer.pytget_wire?sN(t__name__t __module__t__doc__RRRR RRJtINR+R/R2RBREtdefault_algorithmRVRWRX(((s2/usr/lib64/python2.7/site-packages/dns/renderer.pyRs) 04 (R[RR#RRHt dns.exceptionRtdns.tsigR tANSWERt AUTHORITYR3tobjectR(((s2/usr/lib64/python2.7/site-packages/dns/renderer.pyt<module>s
/home/jackpotjunglegam/../../lib64/gdk-pixbuf-2.0/../python2.7/site-packages/./dns/renderer.pyc