Viewing File: /opt/alt/python38/lib/python3.8/site-packages/aiodns/__pycache__/__init__.cpython-38.pyc

U

9`
@sddlZddlZddlZddlZddlmZmZmZmZddl	m
Z
dZdZdZ
dZejejejejejejejejejejejejdZejejejejej d	Z!Gd
ddZ"dS)N)AnyListOptionalSet)errorz3.0.0)DNSResolverr)AZAAAAANYZCAAZCNAMEZMXZNAPTRZNSZPTRZSOAZSRVZTXT)INZCHAOSZHSZNONErc@seZdZd eeeeejeddddZ	e
ejdddZ
e
jeeddd	dZ
eejeedd
ddZd!eeeejd
ddZeejejdddZeejdddZddddZeeeddddZeeddddZddddZdS)"rN)nameserversloopkwargsreturncKsd|p
t|_|jdk	st|ddtjfd|ji||_|rJ||_	t
|_t
|_d|_
dS)NZ
sock_state_cb)asyncioZget_event_looprAssertionErrorpoppycaresChannel_sock_state_cb_channelr
set	_read_fds
_write_fds_timer)selfr
rrr@/opt/alt/python38/lib/python3.8/site-packages/aiodns/__init__.py__init__/szDNSResolver.__init__)rcCs|jjSNrZserversrrrrr
<szDNSResolver.nameservers)valuercCs||j_dSr r!)rr#rrrr
@s)futresulterrornorcCs>|rdS|dk	r0|t|tj|n
||dSr )Z	cancelledZ
set_exceptionrZDNSErrorrerrnostrerrorZ
set_result)r$r%r&rrr	_callbackDs
zDNSResolver._callback)hostqtypeqclassrcCszt|}Wn"tk
r.td|YnX|dk	rhzt|}Wn"tk
rftd|YnXtj|jd}t	|j
|}|jj||||d|S)Nzinvalid query type: {}zinvalid query class: {}r)Zquery_class)
query_type_mapKeyError
ValueErrorformatquery_class_maprFuturer	functoolspartialr)rquery)rr*r+r,r$cbrrrr6MszDNSResolver.query)r*familyrcCs0tj|jd}t|j|}|j||||SNr-)rr3rr4r5r)r
gethostbyname)rr*r8r$r7rrrr:]szDNSResolver.gethostbyname)namercCs.tj|jd}t|j|}|j|||Sr9)rr3rr4r5r)r
gethostbyaddr)rr;r$r7rrrr<cszDNSResolver.gethostbyaddrcCs|jdSr )rcancelr"rrrr=iszDNSResolver.cancel)fdreadablewritablercCs|s|rn|r,|j||j|t|j||rP|j||j|t|j||j	dkr|j
d|j|_	nj||jkr|j||j
|||jkr|j||j||js|js|j	dk	r|j	d|_	dSNg?)rZ
add_reader
_handle_eventREADraddZ
add_writerWRITErr
call_later	_timer_cbdiscardZ
remove_readerZ
remove_writerr=)rr>r?r@rrrrls$



zDNSResolver._sock_state_cb)r>eventrcCs8tj}tj}|tkr|}n|tkr&|}|j||dSr )rARES_SOCKET_BADrCrEr
process_fd)rr>rIZread_fdZwrite_fdrrrrBszDNSResolver._handle_eventcCs<|js|jr2|jtjtj|jd|j|_	nd|_	dSrA)
rrrrKrrJrrFrGrr"rrrrGszDNSResolver._timer_cb)NN)N)__name__
__module____qualname__rrstrrZAbstractEventLooprrpropertyrrr
setterstaticmethodr3intr)r6socketZ
AddressFamilyr:r<r=boolrrBrGrrrrr.s(
	r)#rr4rrTtypingrrrrr__version____all__rCrEZQUERY_TYPE_AZQUERY_TYPE_AAAAZQUERY_TYPE_ANYZQUERY_TYPE_CAAZQUERY_TYPE_CNAMEZ
QUERY_TYPE_MXZQUERY_TYPE_NAPTRZ
QUERY_TYPE_NSZQUERY_TYPE_PTRZQUERY_TYPE_SOAZQUERY_TYPE_SRVZQUERY_TYPE_TXTr.ZQUERY_CLASS_INZQUERY_CLASS_CHAOSZQUERY_CLASS_HSZQUERY_CLASS_NONEZQUERY_CLASS_ANYr2rrrrr<module>s:
Back to Directory File Manager