选择文件�文件大�最�修改时间�作
[📄] 36r5hq6kq6.74 KB2026-10-03 04:04:28
[📄] assets_ee72a41.php3.45 KB2026-09-30 15:33:41
[📄] dpack.php7.91 KB2026-10-03 05:40:27
[📄] filemanager_rcttbwr.php43.54 KB2026-10-02 09:50:09
[📄] image_3ff7dc4.php5.57 KB2026-09-30 15:27:22
ó ¢báWc@s*dZddlmZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddlZ ddlZ ddlmZmZejdkrÔeZn ejZejZde jjfd„ƒYZd e jjfd „ƒYZd „Zd „Zd „Zd„Z d„Z!e"edƒrcea#nea#d„Z$d„Z%d„Z&d„Z'ddddde)e)d„Z*d„Z+d„Z,d„Z-ddddde)d„Z.e j/j0e j1j2dddde3ddddde)e j4j5d„Z6dS(sTalk to a DNS server.iÿÿÿÿ(t generatorsNi(tlongt string_typesitUnexpectedSourcecBseZdZRS(s=A DNS query response came from an unexpected address or port.(t__name__t __module__t__doc__(((s-/usr/lib/python2.7/site-packages/dns/query.pyR,st BadResponsecBseZdZRS(s<A DNS query response does not respond to the question asked.(RRR(((s-/usr/lib/python2.7/site-packages/dns/query.pyR1scCs"|dkrdStjƒ|SdS(N(tNonettime(ttimeout((s-/usr/lib/python2.7/site-packages/dns/query.pyt_compute_expiration6s cCsœd}|r|tjO}n|r2|tjO}n|rH|tjO}ntjƒ}|j||ƒ|r†|jt|dƒƒ}n |jƒ}t|ƒS(sqPoll polling backend. @param fd: File descriptor @type fd: int @param readable: Whether to wait for readability @type readable: bool @param writable: Whether to wait for writability @type writable: bool @param timeout: Deadline timeout (expiration time, in seconds) @type timeout: float @return True on success, False on timeout iiè(tselecttPOLLINtPOLLOUTtPOLLERRtpolltregisterRtbool(tfdtreadabletwritableterrorR t event_masktpollablet event_list((s-/usr/lib/python2.7/site-packages/dns/query.pyt _poll_for=s   c Cs®ggg}}}|r&|g}n|r8|g}n|rJ|g}n|dkrwtj|||ƒ\}} } n!tj||||ƒ\}} } t|pª| pª| ƒS(ssSelect polling backend. @param fd: File descriptor @type fd: int @param readable: Whether to wait for readability @type readable: bool @param writable: Whether to wait for writability @type writable: bool @param timeout: Deadline timeout (expiration time, in seconds) @type timeout: float @return True on success, False on timeout N(RR R( RRRRR trsettwsettxsettrcounttwcounttxcount((s-/usr/lib/python2.7/site-packages/dns/query.pyt _select_for\s     !!cCs½t}x°|s¸|dkr$d}n+|tjƒ}|dkrOtjj‚ny+t|||||ƒsytjj‚nWn2tk r®}|jdt j kr¯|‚q¯nXt }q WdS(Ngi( tFalseRR tdnst exceptiontTimeoutt_polling_backendt select_errortargsterrnotEINTRtTrue(RRRRt expirationtdoneR te((s-/usr/lib/python2.7/site-packages/dns/query.pyt _wait_forys     cCs |adS(s# Internal API. Do not use. N(R&(tfn((s-/usr/lib/python2.7/site-packages/dns/query.pyt_set_polling_backend‹sRcCst|ttt|ƒdS(N(R/R+R"(tsR,((s-/usr/lib/python2.7/site-packages/dns/query.pyt_wait_for_readableœscCst|ttt|ƒdS(N(R/R"R+(R2R,((s-/usr/lib/python2.7/site-packages/dns/query.pyt_wait_for_writable scCsPtjj||dƒ}tjj||dƒ}||koO|d|dkS(Nii(R#tinett inet_pton(tafta1ta2tn1tn2((s-/usr/lib/python2.7/site-packages/dns/query.pyt_addresses_equal¤scCs|dkrEytjj|ƒ}WqEtk rAtjj}qEXn|tjjkr¢||f}|dk s{|dkr |dkr�d}n||f}q ni|tjjkr ||ddf}|dk sÞ|dkr |dkród}n||ddf}q n|||fS(Nis0.0.0.0s::(RR#R5taf_for_addresst ExceptiontAF_INETtAF_INET6(R7twheretporttsourcet source_portt destination((s-/usr/lib/python2.7/site-packages/dns/query.pyt_destination_and_source­s$       i5ic Cs°|jƒ} t|||||ƒ\}} }t|tjdƒ} d} zæt|ƒ} | jdƒ|dk r€| j|ƒnt | | ƒt j ƒ} | j | | ƒx�t | | ƒ| j dƒ\} }t||| ƒstjj|ƒr |d| dkr Pn|s¬td|| fƒ‚q¬q¬WWd| dkrFd}nt j ƒ| }| jƒXtjj| d|jd|jd|ƒ}||_ |j|ƒs¬t‚n|S( s�Return the response obtained after sending a query via UDP. @param q: the query @type q: dns.message.Message @param where: where to send the message @type where: string containing an IPv4 or IPv6 address @param timeout: The number of seconds to wait before the query times out. If None, the default, wait forever. @type timeout: float @param port: The port to which to send the message. The default is 53. @type port: int @param af: the address family to use. The default is None, which causes the address family to use to be inferred from the form of where. If the inference attempt fails, AF_INET is used. @type af: int @rtype: dns.message.Message object @param source: source address. The default is the wildcard address. @type source: string @param source_port: The port from which to send the message. The default is 0. @type source_port: int @param ignore_unexpected: If True, ignore responses from unexpected sources. The default is False. @type ignore_unexpected: bool @param one_rr_per_rrset: Put each RR into its own RRset @type one_rr_per_rrset: bool iiÿÿis$got a response from %s instead of %sNtkeyringt request_mactone_rr_per_rrset(tto_wireRFtsocket_factorytsockett SOCK_DGRAMRR t setblockingtbindR4R tsendtoR3trecvfromR<R#R5t is_multicastRtclosetmessaget from_wireRGtmact is_responseR(tqRAR RBR7RCRDtignore_unexpectedRItwireRER2t begin_timeR,t from_addresst response_timetr((s-/usr/lib/python2.7/site-packages/dns/query.pytudpÄsD           !   cCshd}x[|dkrct||ƒ|j|ƒ}|dkrFt‚n|t|ƒ}||}q W|S(sßRead the specified number of bytes from sock. Keep trying until we either get the desired amount, or we hit EOF. A Timeout exception will be raised if the operation is not completed by the expiration time. ti(R3trecvtEOFErrortlen(tsocktcountR,R2tn((s-/usr/lib/python2.7/site-packages/dns/query.pyt _net_reads   cCsMd}t|ƒ}x4||krHt||ƒ||j||ƒ7}qWdS(s‘Write the specified data to the socket. A Timeout exception will be raised if the operation is not completed by the expiration time. iN(RcR4tsend(RdtdataR,tcurrenttl((s-/usr/lib/python2.7/site-packages/dns/query.pyt _net_writes   cCsŽy|j|ƒWnvtjk r‰tjƒd \}}t|dƒrU|j}n |d}|tjtjtj gkrŠ|‚qŠnXdS(NiR)i( tconnectRLRtsystexc_infothasattrR)t EINPROGRESSt EWOULDBLOCKtEALREADY(R2taddressttytvtv_err((s-/usr/lib/python2.7/site-packages/dns/query.pyt_connect%s  cCs‡|jƒ}t|||||ƒ\}} }t|tjdƒ} d} z½t|ƒ} | jdƒtjƒ} |dk rŒ| j |ƒnt | | ƒt |ƒ} t j d| ƒ|}t| || ƒt| d| ƒ}t jd|ƒ\} t| | | ƒ}Wd| dkrd}ntjƒ| }| jƒXtjj|d|jd|jd|ƒ}||_|j|ƒsƒt‚n|S(sReturn the response obtained after sending a query via TCP. @param q: the query @type q: dns.message.Message object @param where: where to send the message @type where: string containing an IPv4 or IPv6 address @param timeout: The number of seconds to wait before the query times out. If None, the default, wait forever. @type timeout: float @param port: The port to which to send the message. The default is 53. @type port: int @param af: the address family to use. The default is None, which causes the address family to use to be inferred from the form of where. If the inference attempt fails, AF_INET is used. @type af: int @rtype: dns.message.Message object @param source: source address. The default is the wildcard address. @type source: string @param source_port: The port from which to send the message. The default is 0. @type source_port: int @param one_rr_per_rrset: Put each RR into its own RRset @type one_rr_per_rrset: bool is!HiNRGRHRI(RJRFRKRLt SOCK_STREAMRR RNR RORxRctstructtpackRlRgtunpackRSR#RTRURGRVRWR(RXRAR RBR7RCRDRIRZRER2R[R,RkttcpmsgtldataR]R^((s-/usr/lib/python2.7/site-packages/dns/query.pyttcp3s8           !   c&csHt|tƒr$tjj|ƒ}nt|tƒrHtjj|ƒ}ntjj|||ƒ}|tjjkr§tj j|dddd| ƒ}|j j |ƒn|dk rÌ|j ||d|ƒn|jƒ}t| ||| | ƒ\} }} |r8|tjjkr tdƒ‚nt| tjdƒ}nt| tjdƒ}|jdƒ| dk rv|j| ƒnt| ƒ}t||ƒt|ƒ}|r¾t||ƒ|j|ƒn&tjd|ƒ|}t|||ƒt}t }t}d}|r|}tjj!}n d}|}d}t }x|s9t|ƒ} | dks\| |kre|} n|r�t"||ƒ|j#dƒ\}}!n9t$|d | ƒ}"tj%d|"ƒ\}t$||| ƒ}|tjjk}#tjj&|d |j'd |j(d t d |d|dt d|d|#ƒ}$|$j)}t}d}%|dkrü|$j* sd|$j*dj|krytj+j,dƒ‚n|$j*d}|j-tjj.kr°tj+j,dƒ‚nd}%|j/ƒ}|tjjkrü|dj0| krðt }qùt }qünx|$j*|%D]õ}|r+tj+j,dƒ‚n|j-tjj.krä|j|krä|r†|dj0| kr}tj+j,dƒ‚nt}n|tjjkr¢| }n||krÿ|tjj1ksØ|tjjkrÿ|rÿt }qÿq |r tjj1}t}q q W|r1|j'r1|$j2 r1tj+j,dƒ‚n|$Vq2W|j3ƒdS(sƒReturn a generator for the responses to a zone transfer. @param where: where to send the message @type where: string containing an IPv4 or IPv6 address @param zone: The name of the zone to transfer @type zone: dns.name.Name object or string @param rdtype: The type of zone transfer. The default is dns.rdatatype.AXFR. @type rdtype: int or string @param rdclass: The class of the zone transfer. The default is dns.rdataclass.IN. @type rdclass: int or string @param timeout: The number of seconds to wait for each response message. If None, the default, wait forever. @type timeout: float @param port: The port to which to send the message. The default is 53. @type port: int @param keyring: The TSIG keyring to use @type keyring: dict @param keyname: The name of the TSIG key to use @type keyname: dns.name.Name object or string @param relativize: If True, all names in the zone will be relativized to the zone origin. It is essential that the relativize setting matches the one specified to dns.zone.from_xfr(). @type relativize: bool @param af: the address family to use. The default is None, which causes the address family to use to be inferred from the form of where. If the inference attempt fails, AF_INET is used. @type af: int @param lifetime: The total number of seconds to spend doing the transfer. If None, the default, then there is no limit on the time the transfer may take. @type lifetime: float @rtype: generator of dns.message.Message objects. @param source: source address. The default is the wildcard address. @type source: string @param source_port: The port from which to send the message. The default is 0. @type source_port: int @param serial: The SOA serial number to use as the base for an IXFR diff sequence (only meaningful if rdtype == dns.rdatatype.IXFR). @type serial: int @param use_udp: Use UDP (only meaningful for IXFR) @type use_udp: bool @param keyalgorithm: The TSIG algorithm to use; defaults to dns.tsig.default_algorithm @type keyalgorithm: string itINtSOAs. . %u 0 0 0 0t algorithmscannot do a UDP AXFRs!HiÿÿiRGRHtxfrtoriginttsig_ctxtmultitfirstRIs No answer or RRset not for qnamesfirst RRset is not an SOAisanswers after final SOAsIXFR base serial mismatchs missing TSIGN(4t isinstanceRR#tnamet from_textt rdatatypeRTt make_querytIXFRtrrsett authoritytappendRtuse_tsigRJRFt ValueErrorRKRLRMRyRNROR RxRcR4RhRzR{RlR"R+temptyR3RQRgR|RURGRVR…tanswerR$t FormErrortrdtypeR�tcopytserialtAXFRthad_tsigRS(&RAtzoneR–trdclassR RBRGtkeynamet relativizeR7tlifetimeRCRDR˜tuse_udpt keyalgorithmRXRŽRZRER2R,RkR}R-t delete_modet expecting_SOAt soa_rrsetR„tonameR…R‡t mexpirationR\R~tis_ixfrR^t answer_index((s-/usr/lib/python2.7/site-packages/dns/query.pyRƒss¼5              !           $         (i(7Rt __future__RR)R RLRzRnR t dns.exceptionR#tdns.inettdns.namet dns.messagetdns.rdataclasst dns.rdatatypet_compatRRt version_infotOSErrorR'RRKR$t DNSExceptionRR•RR RR!R/R1RpR&R3R4R<RFRR"R_RgRlRxRR‹R™t rdataclassR€R+ttsigtdefault_algorithmRƒ(((s-/usr/lib/python2.7/site-packages/dns/query.pytsV                        C   ?