<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
&j͒                @   s  d dl mZ edkr&dd Ze Z[n"edkr@dd Ze Z[nd dlZ[yeZW n ek
rf   Y nX yd dlZ	W n e
k
r   d dl	Z	Y nX dd
dZdd Zdd Zdd ZyeZd	ZW n( e	jk
r   G dd dZd ZY nX dd ZejZG dd deZejZee ejZejZejZejZejZejZejZejZejZejZej Z ej!Z!ej"Z"ej#Z#ej$Z$ej%Z%ej&Z&ej'Z'ej(Z(ej)Z)ej*Z*ej+Z+ej,Z,ej-Z-ej.Z.ej/Z/ej0Z0ej1Z1ej2Z2ej3Z3ej4Z4ej5Z5ej6Z6ej7Z7ej8Z8ej9Z9ej:Z:ej;Z;ej<Z<ej=Z=ej>Z>ej?Z?ej@Z@ejAZAejBZBejCZCejDZDejEZEejFZFejGZGejHZHejIZIejJZJejKZKejLZLejMZMejNZNejOZOejPZPejQZQejRZRejSZSejTZTejUZUejVZVejWZWejXZXdd ZYejYZYdd ZZejZZZdd Z[ej[Z[G dd deZ\ej]Z]e]e\ d d! Z^ej^Z^d"d# Z_ej_Z_d$d% Z`ej`Z`G d&d' d'eZaejbZbebea G d(d) d)eZcejdZdedec G d*d+ d+eZeejfZfefee G d,d- d-ZgG d.d/ d/ZhG d0d1 d1Zid2d3 ZjejjZjd4d5 ZkejkZkd6d7 ZlejlZld8d9 ZmejmZmG d:d; d;eZnejoZoeoen G d<d= d=eZpejqZqeqep G d>d? d?eZrejsZseser G d@dA dAZtG dBdC dCZudDdE ZvejvZvdFdG ZwejwZwG dHdI dIeZxejyZyeyex dJdK ZzejzZzdLdM Z{ej{Z{dNdO Z|ej|Z|dPdQ Z}ej}Z}dRdS Z~ej~Z~dTdU ZejZdVdW ZejZG dXdY dYeZejZee G dZd[ d[eZejZee G d\d] d]eZejZee G d^d_ d_eZejZee d`da ZejZdbdc ZejZG ddde deeZejZee dfdg ZejZG dhdi dieZejZee djdk ZejZG dldm dmeZejZee ejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZG dndo doZG dpdq dqZdrds ZejZdtdu ZejZdvdw ZejZdxdy ZejZdzd{ ZejZd|d} ZejZd~d ZejZdd ZejZdd ZejZG dd deZejZee G dd deZejZee G dd deZejZee G dd deZejZee G dd deZejZee G dd deZejZee dd ZejZdd ZejZdd ZejZdd ZejZdd ZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZejZdd ZejZG dd dZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZdd ZejZddÄ ZejZddń ZejZddǄ ZejZddɄ Z ej Z dd˄ ZejZdd̈́ ZejZdddЄZdd҄ ZejZddԄ ZejZddք ZejZdd؄ ZejZddڄ ZejZdd܄ Z	ej	Z	ddބ Z
ej
Z
dd ZejZdS )    )version_info      c              C   sT   dd l } tjdd }dj|dfjd}y
| j|S  tk
rN   | jdS X d S )Nr   ._unboundmodule)	importlib__name__
rpartitionjoinlstripimport_moduleImportError)r   ZpkgZmname r   %/usr/lib64/python3.6/unboundmodule.pyswig_import_helper	   s    
r      c              C   s~   ddl m}  dd l}d }y|jd| tg\}}}W n tk
rP   dd l}|S X z|jd|||}W d |d k	rx|j  X |S )Nr   )dirnamer   )	Zos.pathr   impfind_module__file__r   r   load_moduleclose)r   r   fppathnamedescriptionr   Z_modr   r   r   r      s    
N   c             C   s   |dkr| j j|S |dkr8t|jdkr8|| j|< d S |jj|d }|rT|| |S |sxtrltj	| || q|| j|< nt
d|  d S )NthisownthisZSwigPyObjectzYou cannot add attributes to %s)r   owntyper   __dict____swig_setmethods__get	_newclassobject__setattr__AttributeError)self
class_typenamevalueZstaticmethodr   r   r   _swig_setattr_nondynamic3   s    

r,   c             C   s   t | |||dS )Nr   )r,   )r'   r(   r)   r*   r   r   r   _swig_setattrF   s    r-   c             C   sB   |dkr| j j S |jj|d }|r,|| S td|j|f d S )Nr   z!'%s' object has no attribute '%s')r   r   __swig_getmethods__r"   r&   r   )r'   r(   r)   r+   r   r   r   _swig_getattrJ   s    
r/   c             C   sD   yd| j j  }W n tjk
r,   d}Y nX d| jj| jj|f S )Nz	proxy of  z<%s.%s; %s >)r   __repr____builtin__	Exception	__class__
__module__r   )r'   Zstrthisr   r   r   
_swig_reprS   s
    
r6   c               @   s   e Zd ZdS )_objectN)r   r5   __qualname__r   r   r   r   r7   ^   s   r7   c             C   s   t j| |S )N)r   GetNameAsLabelList)r)   lenr   r   r   r9   c   s    r9   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< er<ee	j
Ze	jed< erTee	jZdd ZeeZdd	 ZeeZee	jZee	jZd
d ZeeZdd Ze	jZdd ZdS )
query_infoc             C   s   t | t||S )N)r-   r;   )r'   r)   r*   r   r   r   <lambda>h   s    zquery_info.<lambda>c             C   s   t | t|S )N)r/   r;   )r'   r)   r   r   r   r<   j   s    qtypeqclassc             C   s
   t | jS )N)sldns_wire2str_typer=   )r'   r   r   r   _get_qtype_strs   s    zquery_info._get_qtype_strc             C   s
   t | jS )N)sldns_wire2str_classr>   )r'   r   r   r   _get_qclass_strv   s    zquery_info._get_qclass_strc             C   s
   t | jS )N)
dnameAsStrqname)r'   r   r   r   _get_qname_str}   s    zquery_info._get_qname_strc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_query_infor   appendr2   r3   )r'   r   r   r   r   __init__   s
    zquery_info.__init__c             C   s   d S )Nr   )r'   r   r   r   r<      s    N)r   r5   r8   r!   r%   r.   __getattr__r6   r1   r   Zquery_info_qtype_getr#   _swig_propertyr=   Zquery_info_qclass_getr>   r@   propertyZ	qtype_strrB   Z
qclass_str
_get_qnamerD   _get_qname_componentsZ
qname_listrE   Z	qname_strrG   Zdelete_query_info__swig_destroy____del__r   r   r   r   r;   f   s,   





r;   c             C   s
   t j| S )N)r   rK   )qr   r   r   rK      s    rK   c             C   s
   t j| S )N)r   rL   )rO   r   r   r   rL      s    rL   c             C   s
   t j| S )N)r   rC   )dnamer   r   r   rC      s    rC   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< er<ee	j
Ze	jed< erTee	jZe	jed< erlee	jZdd ZeeZd	d
 ZeeZee	jZee	jZdd ZeeZdd Ze	jZdd Z dS )packed_rrset_keyc             C   s   t | t||S )N)r-   rQ   )r'   r)   r*   r   r   r   r<      s    zpacked_rrset_key.<lambda>c             C   s   t | t|S )N)r/   rQ   )r'   r)   r   r   r   r<      s    flagsr   rrset_classc             C   s   t tj| jS )N)r?   r   ntohsr   )r'   r   r   r   _get_type_str   s    zpacked_rrset_key._get_type_strc             C   s   t tj| jS )N)rA   r   rT   rS   )r'   r   r   r   _get_class_str   s    zpacked_rrset_key._get_class_strc             C   s
   t | jS )N)rC   rP   )r'   r   r   r   _get_dname_str   s    zpacked_rrset_key._get_dname_strc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_packed_rrset_keyr   rF   r2   r3   )r'   r   r   r   r   rG      s
    zpacked_rrset_key.__init__c             C   s   d S )Nr   )r'   r   r   r   r<      s    N)!r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zpacked_rrset_key_flags_getr#   rI   rR   Zpacked_rrset_key_type_getr   Z packed_rrset_key_rrset_class_getrS   rU   rJ   Ztype_strrV   Zrrset_class_str
_get_dnamerP   _get_dname_components
dname_listrW   	dname_strrG   Zdelete_packed_rrset_keyrM   rN   r   r   r   r   rQ      s2   







rQ   c             C   s
   t j| S )N)r   rT   )Znetshortr   r   r   rT     s    rT   c             C   s
   t j| S )N)r   rX   )kr   r   r   rX   	  s    rX   c             C   s
   t j| S )N)r   rY   )r\   r   r   r   rY     s    rY   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZdd Ze	jZd	d Zd
S )ub_packed_rrset_keyc             C   s   t | t||S )N)r-   r]   )r'   r)   r*   r   r   r   r<     s    zub_packed_rrset_key.<lambda>c             C   s   t | t|S )N)r/   r]   )r'   r)   r   r   r   r<     s    entryidrkc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_ub_packed_rrset_keyr   rF   r2   r3   )r'   r   r   r   r   rG   #  s
    zub_packed_rrset_key.__init__c             C   s   d S )Nr   )r'   r   r   r   r<   *  s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zub_packed_rrset_key_entry_setZub_packed_rrset_key_entry_getr#   rI   r^   Zub_packed_rrset_key_id_setZub_packed_rrset_key_id_getr_   Zub_packed_rrset_key_rk_setZub_packed_rrset_key_rk_getr`   rG   Zdelete_ub_packed_rrset_keyrM   rN   r   r   r   r   r]     s(   





r]   c               @   sL  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ dd Z!e	j"Z#dd Z$dS )lruhash_entryc             C   s   t | t||S )N)r-   ra   )r'   r)   r*   r   r   r   r<   0  s    zlruhash_entry.<lambda>c             C   s   t | t|S )N)r/   ra   )r'   r)   r   r   r   r<   2  s    lockoverflow_nextlru_nextlru_prevhashkeydatac             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_lruhash_entryr   rF   r2   r3   )r'   r   r   r   r   rG   Q  s
    zlruhash_entry.__init__c             C   s   d S )Nr   )r'   r   r   r   r<   X  s    N)%r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zlruhash_entry_lock_setZlruhash_entry_lock_getr#   rI   rb   Zlruhash_entry_overflow_next_setZlruhash_entry_overflow_next_getrc   Zlruhash_entry_lru_next_setZlruhash_entry_lru_next_getrd   Zlruhash_entry_lru_prev_setZlruhash_entry_lru_prev_getre   Zlruhash_entry_hash_setZlruhash_entry_hash_getrf   Zlruhash_entry_key_setZlruhash_entry_key_getrg   Zlruhash_entry_data_setZlruhash_entry_data_getrh   rG   Zdelete_lruhash_entryrM   rN   r   r   r   r   ra   .  sH   













ra   c               @   s,  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZd	d
 ZeeZdd ZeeZdd Z ee Z!dd Z"e	j#Z$dd Z%dS )packed_rrset_datac             C   s   t | t||S )N)r-   ri   )r'   r)   r*   r   r   r   r<   ^  s    zpacked_rrset_data.<lambda>c             C   s   t | t|S )N)r/   ri   )r'   r)   r   r   r   r<   `  s    ttlcountrrsig_counttrustsecurityc             C   s   t | S )N)RRSetData_RRLen)r'   r   r   r   _get_data_rr_lenw  s    z"packed_rrset_data._get_data_rr_lenc             C   s   t | S )N)RRSetData_RRTTL)r'   r   r   r   _get_data_rr_ttly  s    z"packed_rrset_data._get_data_rr_ttlc             C   s   t | S )N)RRSetData_RRData)r'   r   r   r   _get_data_rr_data{  s    z#packed_rrset_data._get_data_rr_datac             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_packed_rrset_datar   rF   r2   r3   )r'   r   r   r   r   rG     s
    zpacked_rrset_data.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)&r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zpacked_rrset_data_ttl_setZpacked_rrset_data_ttl_getr#   rI   rj   Zpacked_rrset_data_count_setZpacked_rrset_data_count_getrk   Z!packed_rrset_data_rrsig_count_setZ!packed_rrset_data_rrsig_count_getrl   Zpacked_rrset_data_trust_setZpacked_rrset_data_trust_getrm   Zpacked_rrset_data_security_setZpacked_rrset_data_security_getrn   rp   rJ   Zrr_lenrr   Zrr_ttlrt   Zrr_datarG   Zdelete_packed_rrset_datarM   rN   r   r   r   r   ri   \  sD   









ri   c               @   s$   e Zd Zdd Zdd Zdd ZdS )ro   c             C   s
   || _ d S )N)obj)r'   ru   r   r   r   rG     s    zRRSetData_RRLen.__init__c             C   s   t j| j|S )N)r   rp   ru   )r'   indexr   r   r   __getitem__  s    zRRSetData_RRLen.__getitem__c             C   s   | j j| j j S )N)ru   rk   rl   )r'   r   r   r   __len__  s    zRRSetData_RRLen.__len__N)r   r5   r8   rG   rw   rx   r   r   r   r   ro     s   ro   c               @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
rq   c             C   s
   || _ d S )N)ru   )r'   ru   r   r   r   rG     s    zRRSetData_RRTTL.__init__c             C   s   t j| j|S )N)r   rr   ru   )r'   rv   r   r   r   rw     s    zRRSetData_RRTTL.__getitem__c             C   s   t j| j|| d S )N)r   _set_data_rr_ttlru   )r'   rv   r*   r   r   r   __setitem__  s    zRRSetData_RRTTL.__setitem__c             C   s   | j j| j j S )N)ru   rk   rl   )r'   r   r   r   rx     s    zRRSetData_RRTTL.__len__N)r   r5   r8   rG   rw   rz   rx   r   r   r   r   rq     s   rq   c               @   s$   e Zd Zdd Zdd Zdd ZdS )rs   c             C   s
   || _ d S )N)ru   )r'   ru   r   r   r   rG     s    zRRSetData_RRData.__init__c             C   s   t j| j|S )N)r   rt   ru   )r'   rv   r   r   r   rw     s    zRRSetData_RRData.__getitem__c             C   s   | j j| j j S )N)ru   rk   rl   )r'   r   r   r   rx     s    zRRSetData_RRData.__len__N)r   r5   r8   rG   rw   rx   r   r   r   r   rs     s   rs   c             C   s   t j| |S )N)r   rp   )didxr   r   r   rp     s    rp   c             C   s   t j| ||S )N)r   ry   )r{   r|   rj   r   r   r   ry     s    ry   c             C   s   t j| |S )N)r   rr   )r{   r|   r   r   r   rr     s    rr   c             C   s   t j| |S )N)r   rt   )r{   r|   r   r   r   rt     s    rt   c               @   s  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ e	j!ed< e	j"ed< erZee	j"e	j!Z#e	j$ed< e	j%ed< eree	j%e	j$Z&e	j'ed< e	j(ed< eree	j(e	j'Z)dd Z*e+e*Z,dd Z-e+e-Z.dd Z/e	j0Z1dd Z2dS )
reply_infoc             C   s   t | t||S )N)r-   r}   )r'   r)   r*   r   r   r   r<     s    zreply_info.<lambda>c             C   s   t | t|S )N)r/   r}   )r'   r)   r   r   r   r<     s    rR   qdcountrj   prefetch_ttlauthoritativern   an_numrrsetsns_numrrsetsar_numrrsetsrrset_countc             C   s   t | S )N)ReplyInfo_Ref)r'   r   r   r   _rrset_ref_get  s    zreply_info._rrset_ref_getc             C   s   t | S )N)ReplyInfo_RRSet)r'   r   r   r   _rrset_rrsets_get  s    zreply_info._rrset_rrsets_getc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_reply_infor   rF   r2   r3   )r'   r   r   r   r   rG     s
    zreply_info.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)3r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zreply_info_flags_setZreply_info_flags_getr#   rI   rR   Zreply_info_qdcount_setZreply_info_qdcount_getr~   Zreply_info_ttl_setZreply_info_ttl_getrj   Zreply_info_prefetch_ttl_setZreply_info_prefetch_ttl_getr   Zreply_info_authoritative_setZreply_info_authoritative_getr   Zreply_info_security_setZreply_info_security_getrn   Zreply_info_an_numrrsets_setZreply_info_an_numrrsets_getr   Zreply_info_ns_numrrsets_setZreply_info_ns_numrrsets_getr   Zreply_info_ar_numrrsets_setZreply_info_ar_numrrsets_getr   Zreply_info_rrset_count_setZreply_info_rrset_count_getr   r   rJ   refr   ZrrsetsrG   Zdelete_reply_inforM   rN   r   r   r   r   r}     sh   



















r}   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZdd Ze	jZdd Zd	S )
	rrset_refc             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<     s    zrrset_ref.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<     s    rg   r_   c             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_rrset_refr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zrrset_ref.__init__c             C   s   d S )Nr   )r'   r   r   r   r<      s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zrrset_ref_key_setZrrset_ref_key_getr#   rI   rg   Zrrset_ref_id_setZrrset_ref_id_getr_   rG   Zdelete_rrset_refrM   rN   r   r   r   r   r     s    



r   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZdd Ze	jZdd Zd	S )
dns_msgc             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<     s    zdns_msg.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<     s    qinforepc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_dns_msgr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zdns_msg.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zdns_msg_qinfo_setZdns_msg_qinfo_getr#   rI   r   Zdns_msg_rep_setZdns_msg_rep_getr   rG   Zdelete_dns_msgrM   rN   r   r   r   r   r     s    



r   c               @   s$   e Zd Zdd Zdd Zdd ZdS )r   c             C   s
   || _ d S )N)ru   )r'   ru   r   r   r   rG      s    zReplyInfo_RRSet.__init__c             C   s   t j| j|S )N)r   r   ru   )r'   rv   r   r   r   rw   !  s    zReplyInfo_RRSet.__getitem__c             C   s   | j jS )N)ru   r   )r'   r   r   r   rx   "  s    zReplyInfo_RRSet.__len__N)r   r5   r8   rG   rw   rx   r   r   r   r   r     s   r   c               @   s$   e Zd Zdd Zdd Zdd ZdS )r   c             C   s
   || _ d S )N)ru   )r'   ru   r   r   r   rG   %  s    zReplyInfo_Ref.__init__c             C   s   t j| j|S )N)r   r   ru   )r'   rv   r   r   r   rw   &  s    zReplyInfo_Ref.__getitem__c             C   s   | j jS )N)ru   r   )r'   r   r   r   rx   '  s    zReplyInfo_Ref.__len__N)r   r5   r8   rG   rw   rx   r   r   r   r   r   $  s   r   c             C   s   t j| |S )N)r   r   )rr|   r   r   r   r   *  s    r   c             C   s   t j| |S )N)r   r   )r   r|   r   r   r   r   .  s    r   c               @   s   e Zd Zi Zdd Zi Zdd ZeZdd Z	e
e	Zdd Ze
eZdd	 Ze
eZd
d Ze
eZdd Ze
eZdd Ze
eZdd ZejZdd ZdS )sockaddr_storagec             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<   3  s    zsockaddr_storage.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<   5  s    c             C   s   t | S )N)_sockaddr_storage_family)r'   r   r   r   _family_get8  s    zsockaddr_storage._family_getc             C   s   t | S )N)_sockaddr_storage_addr)r'   r   r   r   	_addr_get;  s    zsockaddr_storage._addr_getc             C   s   t | S )N)_sockaddr_storage_raw_addr)r'   r   r   r   _raw_addr_get>  s    zsockaddr_storage._raw_addr_getc             C   s   t | S )N)_sockaddr_storage_port)r'   r   r   r   	_port_getA  s    zsockaddr_storage._port_getc             C   s   t | S )N)_sockaddr_storage_flowinfo)r'   r   r   r   _flowinfo_getD  s    zsockaddr_storage._flowinfo_getc             C   s   t | S )N)_sockaddr_storage_scope_id)r'   r   r   r   _scope_id_getG  s    zsockaddr_storage._scope_id_getc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_sockaddr_storager   rF   r2   r3   )r'   r   r   r   r   rG   K  s
    zsockaddr_storage.__init__c             C   s   d S )Nr   )r'   r   r   r   r<   R  s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   rJ   familyr   addrr   Zraw_addrr   portr   Zflowinfor   Zscope_idrG   r   Zdelete_sockaddr_storagerM   rN   r   r   r   r   r   1  s(   r   c             C   s
   t j| S )N)r   _sockaddr_storage_len)ssr   r   r   r   W  s    r   c             C   s
   t j| S )N)r   r   )r   r   r   r   r   [  s    r   c             C   s
   t j| S )N)r   r   )r   r   r   r   r   _  s    r   c             C   s
   t j| S )N)r   r   )r   r   r   r   r   c  s    r   c             C   s
   t j| S )N)r   r   )r   r   r   r   r   g  s    r   c             C   s
   t j| S )N)r   r   )r   r   r   r   r   k  s    r   c             C   s
   t j| S )N)r   r   )r   r   r   r   r   o  s    r   c               @   sd   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Zdd Ze	jZdd ZdS )	
mesh_statec             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<   t  s    zmesh_state.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<   v  s    
reply_listc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_mesh_stater   rF   r2   r3   )r'   r   r   r   r   rG   }  s
    zmesh_state.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zmesh_state_reply_list_setZmesh_state_reply_list_getr#   rI   r   rG   Zdelete_mesh_staterM   rN   r   r   r   r   r   r  s   

r   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZdd Ze	jZdd Zd	S )

mesh_replyc             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<     s    zmesh_reply.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<     s    nextquery_replyc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_mesh_replyr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zmesh_reply.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zmesh_reply_next_setZmesh_reply_next_getr#   rI   r   Zmesh_reply_query_reply_setZmesh_reply_query_reply_getr   rG   Zdelete_mesh_replyrM   rN   r   r   r   r   r     s    



r   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Zdd ZeeZdd ZeeZd	d
 ZeeZdd Ze	jZdd ZdS )
comm_replyc             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<     s    zcomm_reply.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<     s    _addrc             C   s
   t | jS )N)r   r   )r'   r   r   r   r     s    zcomm_reply._addr_getc             C   s
   t | jS )N)r   r   )r'   r   r   r   r     s    zcomm_reply._port_getc             C   s
   t | jS )N)r   r   )r'   r   r   r   r     s    zcomm_reply._family_getc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_comm_replyr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zcomm_reply.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zcomm_reply__addr_setZcomm_reply__addr_getr#   rI   r   r   rJ   r   r   r   r   r   rG   Zdelete_comm_replyrM   rN   r   r   r   r   r     s$   

r   c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZdd	 ZeeZd
d ZeeZdd Ze	jZdd Z dS )edns_optionc             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<     s    zedns_option.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<     s    _next	_opt_code_opt_len	_opt_datac             C   s   t | S )N)_edns_option_opt_code_get)r'   r   r   r   _opt_code_get  s    zedns_option._opt_code_getc             C   s   t | S )N)_edns_option_opt_data_get)r'   r   r   r   _opt_data_get  s    zedns_option._opt_data_getc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_edns_optionr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zedns_option.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)!r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zedns_option__next_setZedns_option__next_getr#   rI   r   Zedns_option__opt_code_setZedns_option__opt_code_getr   Zedns_option__opt_len_setZedns_option__opt_len_getr   Zedns_option__opt_data_setZedns_option__opt_data_getr   r   rJ   coder   rh   rG   Zdelete_edns_optionrM   rN   r   r   r   r   r     s8   







r   c             C   s
   t j| S )N)r   r   )optionr   r   r   r     s    r   c             C   s
   t j| S )N)r   r   )r   r   r   r   r     s    r   c               @   s  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ e	j!ed< e	j"ed< erZee	j"e	j!Z#e	j$ed< e	j%ed< eree	j%e	j$Z&dd Z'e(e'Z)dd Z*e(e*Z+dd Z,e	j-Z.dd Z/dS )	edns_datac             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<     s    zedns_data.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<     s    edns_present	ext_rcodeedns_versionbitsudp_sizeopt_list_inopt_list_outopt_list_inplace_cb_outpadding_block_sizec             C   s
   t | jS )N)EdnsOptsListIteropt_list)r'   r   r   r   _opt_list_iter  s    zedns_data._opt_list_iterc             C   s   t | S )N)_edns_data_opt_list_get)r'   r   r   r   	_opt_list   s    zedns_data._opt_listc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_edns_datar   rF   r2   r3   )r'   r   r   r   r   rG   $  s
    zedns_data.__init__c             C   s   d S )Nr   )r'   r   r   r   r<   +  s    N)0r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zedns_data_edns_present_setZedns_data_edns_present_getr#   rI   r   Zedns_data_ext_rcode_setZedns_data_ext_rcode_getr   Zedns_data_edns_version_setZedns_data_edns_version_getr   Zedns_data_bits_setZedns_data_bits_getr   Zedns_data_udp_size_setZedns_data_udp_size_getr   Zedns_data_opt_list_in_setZedns_data_opt_list_in_getr   Zedns_data_opt_list_out_setZedns_data_opt_list_out_getr   Z%edns_data_opt_list_inplace_cb_out_setZ%edns_data_opt_list_inplace_cb_out_getr   Z edns_data_padding_block_size_setZ edns_data_padding_block_size_getr   r   rJ   Zopt_list_iterr   r   rG   Zdelete_edns_datarM   rN   r   r   r   r   r     s`   

















r   c             C   s
   t j| S )N)r   r   )Zednsr   r   r   r   0  s    r   c               @   s  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ e	j!ed< e	j"ed< erZee	j"e	j!Z#e	j$ed< e	j%ed< eree	j%e	j$Z&e	j'ed< e	j(ed< eree	j(e	j'Z)e	j*ed< e	j+ed< eree	j+e	j*Z,e	j-ed< e	j.ed< eree	j.e	j-Z/e	j0ed< e	j1ed< er"ee	j1e	j0Z2e	j3ed< e	j4ed< erJee	j4e	j3Z5e	j6ed< e	j7ed< erree	j7e	j6Z8e	j9ed< e	j:ed< eree	j:e	j9Z;e	j<ed< e	j=ed< eree	j=e	j<Z>e	j?ed< e	j@ed< eree	j@e	j?ZAe	jBed< e	jCed< eree	jCe	jBZDe	jEed< e	jFed< er:ee	jFe	jEZGe	jHed< e	jIed< erbee	jIe	jHZJe	jKed< e	jLed< eree	jLe	jKZMe	jNed< e	jOed< eree	jOe	jNZPe	jQed< e	jRed< eree	jRe	jQZSe	jTed< e	jUed< eree	jUe	jTZVe	jWed< e	jXed< er*ee	jXe	jWZYe	jZed< e	j[ed< erRee	j[e	jZZ\e	j]ed< e	j^ed< erzee	j^e	j]Z_d d! Z`eae`Zbd"d# Zce	jdZed$d Zfd%S )&
module_envc             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<   5  s    zmodule_env.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<   7  s    cfg	msg_cacherrset_cacheinfra_cache	key_cache
send_querydetach_subs
attach_subkill_subdetect_cyclescratchscratch_bufferworkermeshallocrnd_now_now_tvneed_to_validateanchors	neg_cacheprobe_timerfwdshintsmodinfoinplace_cb_listsedns_known_optionsedns_known_options_numc             C   s   t | S )N)_module_env_now_get)r'   r   r   r   _now_get  s    zmodule_env._now_getc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_module_envr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zmodule_env.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)gr   r5   r8   r!   r%   r.   rH   r6   r1   r   Zmodule_env_cfg_setZmodule_env_cfg_getr#   rI   r   Zmodule_env_msg_cache_setZmodule_env_msg_cache_getr   Zmodule_env_rrset_cache_setZmodule_env_rrset_cache_getr   Zmodule_env_infra_cache_setZmodule_env_infra_cache_getr   Zmodule_env_key_cache_setZmodule_env_key_cache_getr   Zmodule_env_send_query_setZmodule_env_send_query_getr   Zmodule_env_detach_subs_setZmodule_env_detach_subs_getr   Zmodule_env_attach_sub_setZmodule_env_attach_sub_getr   Zmodule_env_kill_sub_setZmodule_env_kill_sub_getr   Zmodule_env_detect_cycle_setZmodule_env_detect_cycle_getr   Zmodule_env_scratch_setZmodule_env_scratch_getr   Zmodule_env_scratch_buffer_setZmodule_env_scratch_buffer_getr   Zmodule_env_worker_setZmodule_env_worker_getr   Zmodule_env_mesh_setZmodule_env_mesh_getr   Zmodule_env_alloc_setZmodule_env_alloc_getr   Zmodule_env_rnd_setZmodule_env_rnd_getr   Zmodule_env__now_setZmodule_env__now_getr   Zmodule_env__now_tv_setZmodule_env__now_tv_getr   Zmodule_env_need_to_validate_setZmodule_env_need_to_validate_getr   Zmodule_env_anchors_setZmodule_env_anchors_getr   Zmodule_env_neg_cache_setZmodule_env_neg_cache_getr   Zmodule_env_probe_timer_setZmodule_env_probe_timer_getr   Zmodule_env_fwds_setZmodule_env_fwds_getr   Zmodule_env_hints_setZmodule_env_hints_getr   Zmodule_env_modinfo_setZmodule_env_modinfo_getr   Zmodule_env_inplace_cb_lists_setZmodule_env_inplace_cb_lists_getr   Z!module_env_edns_known_options_setZ!module_env_edns_known_options_getr   Z%module_env_edns_known_options_num_setZ%module_env_edns_known_options_num_getr   r   rJ   ZnowrG   Zdelete_module_envrM   rN   r   r   r   r   r   3  s   























































r   c             C   s
   t j| S )N)r   r   )envr   r   r   r     s    r   c               @   s  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ e	j!ed< e	j"ed< erZee	j"e	j!Z#e	j$ed< e	j%ed< eree	j%e	j$Z&e	j'ed< e	j(ed< eree	j(e	j'Z)e	j*ed< e	j+ed< eree	j+e	j*Z,e	j-ed< e	j.ed< eree	j.e	j-Z/e	j0ed< e	j1ed< er"ee	j1e	j0Z2e	j3ed< e	j4ed< erJee	j4e	j3Z5dd Z6dd Z7e8e7Z9dd Z:e8e:Z;dd Z<e8e<Z=dd Z>e8e>Z?dd Z@e8e@ZAdd ZBe8eBZCd d! ZDe8eDZEd"d# ZFe8eFZGd$d% ZHe8eHZId&d' ZJe	jKZLd(d ZMd)S )*module_qstatec             C   s   t | t||S )N)r-   r   )r'   r)   r*   r   r   r   r<     s    zmodule_qstate.<lambda>c             C   s   t | t|S )N)r/   r   )r'   r)   r   r   r   r<     s    r   query_flags
is_priming	is_valrecreply
return_msgreturn_rcoderegioncurmodprefetch_leewayr   	mesh_infono_cache_lookupno_cache_storec             C   s   t j| || dS )zSets the ext stateN)r   _ext_state_set)r'   r_   stater   r   r   set_ext_state  s    zmodule_qstate.set_ext_statec             C   s   t | S )N)ExtState)r'   r   r   r   Z__ext_state_get   s    zmodule_qstate.__ext_state_getc             C   s
   t | jS )N)r   edns_opts_front_in)r'   r   r   r   _edns_opts_front_in_iter  s    z&module_qstate._edns_opts_front_in_iterc             C   s
   t | jS )N)r   edns_opts_back_out)r'   r   r   r   _edns_opts_back_out_iter  s    z&module_qstate._edns_opts_back_out_iterc             C   s
   t | jS )N)r   edns_opts_back_in)r'   r   r   r   _edns_opts_back_in_iter  s    z%module_qstate._edns_opts_back_in_iterc             C   s
   t | jS )N)r   edns_opts_front_out)r'   r   r   r   _edns_opts_front_out_iter	  s    z'module_qstate._edns_opts_front_out_iterc             C   s   t | S )N)_edns_opts_front_in_get)r'   r   r   r   _edns_opts_front_in  s    z!module_qstate._edns_opts_front_inc             C   s   t | S )N)_edns_opts_back_out_get)r'   r   r   r   _edns_opts_back_out  s    z!module_qstate._edns_opts_back_outc             C   s   t | S )N)_edns_opts_back_in_get)r'   r   r   r   _edns_opts_back_in  s    z module_qstate._edns_opts_back_inc             C   s   t | S )N)_edns_opts_front_out_get)r'   r   r   r   _edns_opts_front_out  s    z"module_qstate._edns_opts_front_outc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_module_qstater   rF   r2   r3   )r'   r   r   r   r   rG     s
    zmodule_qstate.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)Nr   r5   r8   r!   r%   r.   rH   r6   r1   r   Zmodule_qstate_qinfo_setZmodule_qstate_qinfo_getr#   rI   r   Zmodule_qstate_query_flags_setZmodule_qstate_query_flags_getr   Zmodule_qstate_is_priming_setZmodule_qstate_is_priming_getr   Zmodule_qstate_is_valrec_setZmodule_qstate_is_valrec_getr   Zmodule_qstate_reply_setZmodule_qstate_reply_getr   Zmodule_qstate_return_msg_setZmodule_qstate_return_msg_getr   Zmodule_qstate_return_rcode_setZmodule_qstate_return_rcode_getr   Zmodule_qstate_region_setZmodule_qstate_region_getr   Zmodule_qstate_curmod_setZmodule_qstate_curmod_getr   Z!module_qstate_prefetch_leeway_setZ!module_qstate_prefetch_leeway_getr   Zmodule_qstate_env_setZmodule_qstate_env_getr   Zmodule_qstate_mesh_info_setZmodule_qstate_mesh_info_getr   Z!module_qstate_no_cache_lookup_setZ!module_qstate_no_cache_lookup_getr   Z module_qstate_no_cache_store_setZ module_qstate_no_cache_store_getr   r   Z_module_qstate__ext_state_getrJ   Z	ext_stater   Zedns_opts_front_in_iterr   Zedns_opts_back_out_iterr   Zedns_opts_back_in_iterr   Zedns_opts_front_out_iterr   r   r   r   r   r   r  r   rG   Zdelete_module_qstaterM   rN   r   r   r   r   r     s   



























r   c               @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )r   c             C   s
   || _ d S )N)ru   )r'   ru   r   r   r   rG   7  s    zExtState.__init__c                s    dj  fddtdtjD S )Nz, c                s    g | ]}t jt j j|qS r   )r   strextstate_ext_state_getru   ).0a)r'   r   r   
<listcomp>9  s    z$ExtState.__str__.<locals>.<listcomp>r   )r
   ranger   MODULE_COUNT)r'   r   )r'   r   __str__8  s    zExtState.__str__c             C   s   t j| j|S )N)r   r  ru   )r'   rv   r   r   r   rw   :  s    zExtState.__getitem__c             C   s   t j| j|| d S )N)r   r   ru   )r'   rv   r*   r   r   r   rz   ;  s    zExtState.__setitem__c             C   s   t jS )N)r   r	  )r'   r   r   r   rx   <  s    zExtState.__len__N)r   r5   r8   rG   r
  rw   rz   rx   r   r   r   r   r   6  s
   r   c               @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )r   c             C   s   || _ d | _d S )N)_current_temp)r'   ru   r   r   r   rG   ?  s    zEdnsOptsListIter.__init__c             C   s   | S )Nr   )r'   r   r   r   __iter__B  s    zEdnsOptsListIter.__iter__c             C   s   | j  S )zPython 3 compatibility)	_get_next)r'   r   r   r   __next__C  s    zEdnsOptsListIter.__next__c             C   s   | j  S )zPython 2 compatibility)r  )r'   r   r   r   r   F  s    zEdnsOptsListIter.nextc             C   s0   t | js(| j| _t| j| _t| jS td S )N)edns_opt_list_is_emptyr  r  _p_p_edns_option_get_next_dereference_edns_optionStopIteration)r'   r   r   r   r  I  s
    

zEdnsOptsListIter._get_nextN)r   r5   r8   rG   r  r  r   r  r   r   r   r   r   >  s
   r   c             C   s   t j| |S )N)r   r  )rO   r|   r   r   r   r  R  s    r  c             C   s   t j| ||S )N)r   r   )rO   r|   r   r   r   r   r   V  s    r   c             C   s
   t j| S )N)r   r  )optr   r   r   r  Z  s    r  c             C   s
   t j| S )N)r   r  )r  r   r   r   r  ^  s    r  c             C   s
   t j| S )N)r   r  )r  r   r   r   r  b  s    r  c             C   s
   t j| S )N)r   r   )rO   r   r   r   r   f  s    r   c             C   s
   t j| S )N)r   r   )rO   r   r   r   r   j  s    r   c             C   s
   t j| S )N)r   r   )rO   r   r   r   r   n  s    r   c             C   s
   t j| S )N)r   r  )rO   r   r   r   r  r  s    r  c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZdd Ze	jZdd Zd	S )
config_strlistc             C   s   t | t||S )N)r-   r  )r'   r)   r*   r   r   r   r<   w  s    zconfig_strlist.<lambda>c             C   s   t | t|S )N)r/   r  )r'   r)   r   r   r   r<   y  s    r   strc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_config_strlistr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zconfig_strlist.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zconfig_strlist_next_setZconfig_strlist_next_getr#   rI   r   Zconfig_strlist_str_setZconfig_strlist_str_getr  rG   Zdelete_config_strlistrM   rN   r   r   r   r   r  u  s    



r  c               @   s   e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZdd Ze	jZd	d Zd
S )config_str2listc             C   s   t | t||S )N)r-   r  )r'   r)   r*   r   r   r   r<     s    zconfig_str2list.<lambda>c             C   s   t | t|S )N)r/   r  )r'   r)   r   r   r   r<     s    r   r  str2c             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_config_str2listr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zconfig_str2list.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zconfig_str2list_next_setZconfig_str2list_next_getr#   rI   r   Zconfig_str2list_str_setZconfig_str2list_str_getr  Zconfig_str2list_str2_setZconfig_str2list_str2_getr  rG   Zdelete_config_str2listrM   rN   r   r   r   r   r    s(   





r  c               @   s  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ e	j!ed< e	j"ed< erZee	j"e	j!Z#e	j$ed< e	j%ed< eree	j%e	j$Z&e	j'ed< e	j(ed< eree	j(e	j'Z)e	j*ed< e	j+ed< eree	j+e	j*Z,e	j-ed< e	j.ed< eree	j.e	j-Z/e	j0ed< e	j1ed< er"ee	j1e	j0Z2e	j3ed< e	j4ed< erJee	j4e	j3Z5e	j6ed< e	j7ed< erree	j7e	j6Z8e	j9ed< e	j:ed< eree	j:e	j9Z;e	j<ed< e	j=ed< eree	j=e	j<Z>e	j?ed< e	j@ed< eree	j@e	j?ZAe	jBed< e	jCed< eree	jCe	jBZDe	jEed< e	jFed< er:ee	jFe	jEZGe	jHed< e	jIed< erbee	jIe	jHZJe	jKed< e	jLed< eree	jLe	jKZMe	jNed< e	jOed< eree	jOe	jNZPe	jQed< e	jRed< eree	jRe	jQZSe	jTed< e	jUed< eree	jUe	jTZVe	jWed< e	jXed< er*ee	jXe	jWZYe	jZed< e	j[ed< erRee	j[e	jZZ\e	j]ed< e	j^ed< erzee	j^e	j]Z_e	j`ed < e	jaed < eree	jae	j`Zbe	jced!< e	jded!< eree	jde	jcZee	jfed"< e	jged"< eree	jge	jfZhe	jied#< e	jjed#< eree	jje	jiZke	jled$< e	jmed$< erBee	jme	jlZne	joed%< e	jped%< erjee	jpe	joZqe	jred&< e	jsed&< eree	jse	jrZte	jued'< e	jved'< eree	jve	juZwe	jxed(< e	jyed(< eree	jye	jxZze	j{ed)< e	j|ed)< er
ee	j|e	j{Z}e	j~ed*< e	jed*< er2ee	je	j~Ze	jed+< e	jed+< erZee	je	jZe	jed,< e	jed,< eree	je	jZe	jed-< e	jed-< eree	je	jZe	jed.< e	jed.< eree	je	jZe	jed/< e	jed/< eree	je	jZe	jed0< e	jed0< er"ee	je	jZe	jed1< e	jed1< erJee	je	jZe	jed2< e	jed2< erree	je	jZe	jed3< e	jed3< eree	je	jZe	jed4< e	jed4< eree	je	jZe	jed5< e	jed5< eree	je	jZe	jed6< e	jed6< eree	je	jZe	jed7< e	jed7< er:ee	je	jZe	jed8< e	jed8< erbee	je	jZe	jed9< e	jed9< eree	je	jZe	jed:< e	jed:< eree	je	jZe	jed;< e	jed;< eree	je	jZe	jed<< e	jed<< e	ree	je	jZe	jed=< e	jed=< e	r*ee	je	jZe	jed>< e	jed>< e	rRee	je	jZe	jed?< e	jed?< e	rzee	je	jZe	jed@< e	jed@< e	ree	je	jZe	jedA< e	jedA< e	ree	je	jÃZe	jedB< e	jedB< e	ree	je	jƃZe	jedC< e	jedC< e
ree	je	jɃZe	jedD< e	jedD< e
rBee	je	j̃Ze	jedE< e	jedE< e
rjee	je	jσZe	jedF< e	jedF< e
ree	je	j҃Ze	jedG< e	jedG< e
ree	je	jՃZe	jedH< e	jedH< e
ree	je	j؃Ze	jedI< e	jedI< er
ee	je	jۃZe	jedJ< e	jedJ< er2ee	je	jރZe	jedK< e	jedK< erZee	je	jZe	jedL< e	jedL< eree	je	jZe	jedM< e	jedM< eree	je	jZe	jedN< e	jedN< eree	je	jZe	jedO< e	jedO< eree	je	jZe	jedP< e	jedP< er"ee	je	jZe	jedQ< e	jedQ< erJee	je	jZe	jedR< e	jedR< erree	je	jZe	jedS< e	jedS< eree	je	jZdTdU Ze	jZdVd ZdWS )Xconfig_filec             C   s   t | t||S )N)r-   r  )r'   r)   r*   r   r   r   r<     s    zconfig_file.<lambda>c             C   s   t | t|S )N)r/   r  )r'   r)   r   r   r   r<     s    	verbositystat_intervalstat_cumulativestat_extendednum_threadsr   do_ip4do_ip6do_udpdo_tcpoutgoing_num_portsoutgoing_num_tcpincoming_num_tcpoutgoing_avail_portsmsg_buffer_sizemsg_cache_sizemsg_cache_slabsnum_queries_per_threadjostle_timerrset_cache_sizerrset_cache_slabshost_ttlinfra_cache_slabsinfra_cache_numhoststarget_fetch_policyif_automaticnum_ifsifsnum_out_ifsout_ifs
root_hintsstubsforwardsdonotqueryaddrsaclsdonotquery_localhostharden_short_bufsizeharden_large_queriesharden_glueharden_dnssec_strippedharden_referral_pathuse_caps_bits_for_idprivate_addressprivate_domainunwanted_threshold	chrootdirusername	directorylogfilepidfile
use_sysloghide_identityhide_versionidentityversionmodule_conftrust_anchor_file_listtrust_anchor_listtrusted_keys_file_listmax_ttlval_date_override	bogus_ttlval_clean_additionalval_permissive_modeval_nsec3_key_iterationskey_cache_sizekey_cache_slabsneg_cache_sizelocal_zoneslocal_zones_nodefault
local_dataremote_control_enablecontrol_ifscontrol_portserver_key_fileserver_cert_filecontrol_key_filecontrol_cert_filedo_daemonizepython_scriptc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_config_filer   rF   r2   r3   )r'   r   r   r   r   rG     s
    zconfig_file.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N(   r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zconfig_file_verbosity_setZconfig_file_verbosity_getr#   rI   r  Zconfig_file_stat_interval_setZconfig_file_stat_interval_getr  Zconfig_file_stat_cumulative_setZconfig_file_stat_cumulative_getr  Zconfig_file_stat_extended_setZconfig_file_stat_extended_getr  Zconfig_file_num_threads_setZconfig_file_num_threads_getr  Zconfig_file_port_setZconfig_file_port_getr   Zconfig_file_do_ip4_setZconfig_file_do_ip4_getr  Zconfig_file_do_ip6_setZconfig_file_do_ip6_getr   Zconfig_file_do_udp_setZconfig_file_do_udp_getr!  Zconfig_file_do_tcp_setZconfig_file_do_tcp_getr"  Z"config_file_outgoing_num_ports_setZ"config_file_outgoing_num_ports_getr#  Z config_file_outgoing_num_tcp_setZ config_file_outgoing_num_tcp_getr$  Z config_file_incoming_num_tcp_setZ config_file_incoming_num_tcp_getr%  Z$config_file_outgoing_avail_ports_setZ$config_file_outgoing_avail_ports_getr&  Zconfig_file_msg_buffer_size_setZconfig_file_msg_buffer_size_getr'  Zconfig_file_msg_cache_size_setZconfig_file_msg_cache_size_getr(  Zconfig_file_msg_cache_slabs_setZconfig_file_msg_cache_slabs_getr)  Z&config_file_num_queries_per_thread_setZ&config_file_num_queries_per_thread_getr*  Zconfig_file_jostle_time_setZconfig_file_jostle_time_getr+  Z config_file_rrset_cache_size_setZ config_file_rrset_cache_size_getr,  Z!config_file_rrset_cache_slabs_setZ!config_file_rrset_cache_slabs_getr-  Zconfig_file_host_ttl_setZconfig_file_host_ttl_getr.  Z!config_file_infra_cache_slabs_setZ!config_file_infra_cache_slabs_getr/  Z$config_file_infra_cache_numhosts_setZ$config_file_infra_cache_numhosts_getr0  Z#config_file_target_fetch_policy_setZ#config_file_target_fetch_policy_getr1  Zconfig_file_if_automatic_setZconfig_file_if_automatic_getr2  Zconfig_file_num_ifs_setZconfig_file_num_ifs_getr3  Zconfig_file_ifs_setZconfig_file_ifs_getr4  Zconfig_file_num_out_ifs_setZconfig_file_num_out_ifs_getr5  Zconfig_file_out_ifs_setZconfig_file_out_ifs_getr6  Zconfig_file_root_hints_setZconfig_file_root_hints_getr7  Zconfig_file_stubs_setZconfig_file_stubs_getr8  Zconfig_file_forwards_setZconfig_file_forwards_getr9  Zconfig_file_donotqueryaddrs_setZconfig_file_donotqueryaddrs_getr:  Zconfig_file_acls_setZconfig_file_acls_getr;  Z$config_file_donotquery_localhost_setZ$config_file_donotquery_localhost_getr<  Z$config_file_harden_short_bufsize_setZ$config_file_harden_short_bufsize_getr=  Z$config_file_harden_large_queries_setZ$config_file_harden_large_queries_getr>  Zconfig_file_harden_glue_setZconfig_file_harden_glue_getr?  Z&config_file_harden_dnssec_stripped_setZ&config_file_harden_dnssec_stripped_getr@  Z$config_file_harden_referral_path_setZ$config_file_harden_referral_path_getrA  Z$config_file_use_caps_bits_for_id_setZ$config_file_use_caps_bits_for_id_getrB  Zconfig_file_private_address_setZconfig_file_private_address_getrC  Zconfig_file_private_domain_setZconfig_file_private_domain_getrD  Z"config_file_unwanted_threshold_setZ"config_file_unwanted_threshold_getrE  Zconfig_file_chrootdir_setZconfig_file_chrootdir_getrF  Zconfig_file_username_setZconfig_file_username_getrG  Zconfig_file_directory_setZconfig_file_directory_getrH  Zconfig_file_logfile_setZconfig_file_logfile_getrI  Zconfig_file_pidfile_setZconfig_file_pidfile_getrJ  Zconfig_file_use_syslog_setZconfig_file_use_syslog_getrK  Zconfig_file_hide_identity_setZconfig_file_hide_identity_getrL  Zconfig_file_hide_version_setZconfig_file_hide_version_getrM  Zconfig_file_identity_setZconfig_file_identity_getrN  Zconfig_file_version_setZconfig_file_version_getrO  Zconfig_file_module_conf_setZconfig_file_module_conf_getrP  Z&config_file_trust_anchor_file_list_setZ&config_file_trust_anchor_file_list_getrQ  Z!config_file_trust_anchor_list_setZ!config_file_trust_anchor_list_getrR  Z&config_file_trusted_keys_file_list_setZ&config_file_trusted_keys_file_list_getrS  Zconfig_file_max_ttl_setZconfig_file_max_ttl_getrT  Z!config_file_val_date_override_setZ!config_file_val_date_override_getrU  Zconfig_file_bogus_ttl_setZconfig_file_bogus_ttl_getrV  Z$config_file_val_clean_additional_setZ$config_file_val_clean_additional_getrW  Z#config_file_val_permissive_mode_setZ#config_file_val_permissive_mode_getrX  Z(config_file_val_nsec3_key_iterations_setZ(config_file_val_nsec3_key_iterations_getrY  Zconfig_file_key_cache_size_setZconfig_file_key_cache_size_getrZ  Zconfig_file_key_cache_slabs_setZconfig_file_key_cache_slabs_getr[  Zconfig_file_neg_cache_size_setZconfig_file_neg_cache_size_getr\  Zconfig_file_local_zones_setZconfig_file_local_zones_getr]  Z%config_file_local_zones_nodefault_setZ%config_file_local_zones_nodefault_getr^  Zconfig_file_local_data_setZconfig_file_local_data_getr_  Z%config_file_remote_control_enable_setZ%config_file_remote_control_enable_getr`  Zconfig_file_control_ifs_setZconfig_file_control_ifs_getra  Zconfig_file_control_port_setZconfig_file_control_port_getrb  Zconfig_file_server_key_file_setZconfig_file_server_key_file_getrc  Z config_file_server_cert_file_setZ config_file_server_cert_file_getrd  Z config_file_control_key_file_setZ config_file_control_key_file_getre  Z!config_file_control_cert_file_setZ!config_file_control_cert_file_getrf  Zconfig_file_do_daemonize_setZconfig_file_do_daemonize_getrg  Zconfig_file_python_script_setZconfig_file_python_script_getrh  rG   Zdelete_config_filerM   rN   r   r   r   r   r    s  































































































































































r  c               @   sp  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ e!e	j"Z#e!e	j$Z%dd Z&e!e&Z'dd Z(e	j)Z*dd Z+dS )
delegpt_nsc             C   s   t | t||S )N)r-   ri  )r'   r)   r*   r   r   r   r<     s    zdelegpt_ns.<lambda>c             C   s   t | t|S )N)r/   ri  )r'   r)   r   r   r   r<     s    r   resolvedgot4got6lamedone_pside4done_pside6c             C   s
   t | jS )N)rC   rP   )r'   r   r   r   rW   &  s    zdelegpt_ns._get_dname_strc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_delegpt_nsr   rF   r2   r3   )r'   r   r   r   r   rG   *  s
    zdelegpt_ns.__init__c             C   s   d S )Nr   )r'   r   r   r   r<   1  s    N),r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zdelegpt_ns_next_setZdelegpt_ns_next_getr#   rI   r   Zdelegpt_ns_resolved_setZdelegpt_ns_resolved_getrj  Zdelegpt_ns_got4_setZdelegpt_ns_got4_getrk  Zdelegpt_ns_got6_setZdelegpt_ns_got6_getrl  Zdelegpt_ns_lame_setZdelegpt_ns_lame_getrm  Zdelegpt_ns_done_pside4_setZdelegpt_ns_done_pside4_getrn  Zdelegpt_ns_done_pside6_setZdelegpt_ns_done_pside6_getro  rJ   _get_dpns_dnamerP   _get_dpns_dname_componentsrZ   rW   r[   rG   Zdelete_delegpt_nsrM   rN   r   r   r   r   ri    sP   















ri  c               @   s\  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ dd Z!e"e!Z#dd Z$e	j%Z&dd Z'dS )delegpt_addrc             C   s   t | t||S )N)r-   rr  )r'   r)   r*   r   r   r   r<   7  s    zdelegpt_addr.<lambda>c             C   s   t | t|S )N)r/   rr  )r'   r)   r   r   r   r<   9  s    next_resultnext_usablenext_targetattemptssel_rttbogusrm  c             C   s   t | S )N)_delegpt_addr_addr_get)r'   r   r   r   r   X  s    zdelegpt_addr._addr_getc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_delegpt_addrr   rF   r2   r3   )r'   r   r   r   r   rG   \  s
    zdelegpt_addr.__init__c             C   s   d S )Nr   )r'   r   r   r   r<   c  s    N)(r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zdelegpt_addr_next_result_setZdelegpt_addr_next_result_getr#   rI   rs  Zdelegpt_addr_next_usable_setZdelegpt_addr_next_usable_getrt  Zdelegpt_addr_next_target_setZdelegpt_addr_next_target_getru  Zdelegpt_addr_attempts_setZdelegpt_addr_attempts_getrv  Zdelegpt_addr_sel_rtt_setZdelegpt_addr_sel_rtt_getrw  Zdelegpt_addr_bogus_setZdelegpt_addr_bogus_getrx  Zdelegpt_addr_lame_setZdelegpt_addr_lame_getrm  r   rJ   r   rG   Zdelete_delegpt_addrrM   rN   r   r   r   r   rr  5  sL   













rr  c               @   s  e Zd Zi Zdd Zi Zdd ZeZe	j
ed< e	jed< erJee	je	j
Ze	jed< e	jed< erpee	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed< e	jed< eree	je	jZe	jed	< e	jed	< er
ee	je	jZe	jed
< e	jed
< er2ee	je	jZ e	j!ed< e	j"ed< erZee	j"e	j!Z#e$e	j%Z&e$e	j'Z(dd Z)e$e)Z*dd Z+e	j,Z-dd Z.dS )delegptc             C   s   t | t||S )N)r-   rz  )r'   r)   r*   r   r   r   r<   i  s    zdelegpt.<lambda>c             C   s   t | t|S )N)r/   rz  )r'   r)   r   r   r   r<   k  s    namelabsnslisttarget_listusable_listresult_listrx  has_parent_side_NSdp_type_mlcc             C   s
   t | jS )N)rC   rP   )r'   r   r   r   rW     s    zdelegpt._get_dname_strc             C   s:   t j }y| jj| W n tjk
r4   || _Y nX d S )N)r   Znew_delegptr   rF   r2   r3   )r'   r   r   r   r   rG     s
    zdelegpt.__init__c             C   s   d S )Nr   )r'   r   r   r   r<     s    N)/r   r5   r8   r!   r%   r.   rH   r6   r1   r   Zdelegpt_namelabs_setZdelegpt_namelabs_getr#   rI   r{  Zdelegpt_nslist_setZdelegpt_nslist_getr|  Zdelegpt_target_list_setZdelegpt_target_list_getr}  Zdelegpt_usable_list_setZdelegpt_usable_list_getr~  Zdelegpt_result_list_setZdelegpt_result_list_getr  Zdelegpt_bogus_setZdelegpt_bogus_getrx  Zdelegpt_has_parent_side_NS_setZdelegpt_has_parent_side_NS_getr  Zdelegpt_dp_type_mlc_setZdelegpt_dp_type_mlc_getr  rJ   _get_dp_dnamerP   _get_dp_dname_componentsrZ   rW   r[   rG   Zdelete_delegptrM   rN   r   r   r   r   rz  g  sX   

















rz  c             C   s
   t j| S )N)r   r  )dpr   r   r   r    s    r  c             C   s
   t j| S )N)r   r  )r  r   r   r   r    s    r  c             C   s
   t j| S )N)r   rp  )dpnsr   r   r   rp    s    rp  c             C   s
   t j| S )N)r   rq  )r  r   r   r   rq    s    rq  c             C   s
   t j| S )N)r   ry  )targetr   r   r   ry    s    ry  c
       
      C   s   t j| |||||||||	
S )N)r   set_return_msg)
qstaterr_namerr_typerr_classrR   default_ttlquestionanswer	authority
additionalr   r   r   r    s    r  c               @   s$   e Zd ZeddfddZdd ZdS )
DNSMessager   c             C   s:   || _ || _|| _|| _|| _g | _g | _g | _g | _dS )z0Query flags is a combination of PKT_xx constantsN)	r  r  r  r  r   r  r  r  r  )r'   r  r  r  r   r  r   r   r   rG     s    zDNSMessage.__init__c             C   sJ   t j|| j| j| j| j| j| j| j| j	| j

}|rFt| j@ rFd|jj_|S )zReturns 1 if OKr   )r   r  r  r  r  r   r  r  r  r  r  PKT_AAr   r   r   )r'   r  Zstatusr   r   r   r    s    
zDNSMessage.set_return_msgN)r   r5   r8   RR_CLASS_INrG   r  r   r   r   r   r    s   r  c             C   s   t j| |||||||||	|
S )N)r   dns_cache_find_delegation)r   rD   Zqnamelenr=   r>   r   msgZtimenowZnoexpiredaboveZ	expiretopZexpiretoplenr   r   r   r    s    r  c             C   s   t j| ||||S )N)r   iter_dp_is_useless)r   Zqflagsr  Zsupports_ipv4Zsupports_ipv6r   r   r   r    s    r  c             C   s   t j| |||S )N)r   hints_lookup_stub)r   rD   r>   r  r   r   r   r    s    r  c             C   s   t j| ||S )N)r   find_delegation)r  ZnmZnmlenr   r   r   r    s    r  c             C   s   t j| |S )N)r   unbound_verbose)levelformatr   r   r   r  
  s    r  c             C   s
   t j| S )N)r   unbound_log_info)r  r   r   r   r    s    r  c             C   s
   t j| S )N)r   unbound_log_err)r  r   r   r   r    s    r  c             C   s
   t j| S )N)r   unbound_log_warn)r  r   r   r   r    s    r  c             C   s   t j| ||S )N)r   log_hex)r  rh   Zlengthr   r   r   r    s    r  c             C   s   t j| ||S )N)r   log_dns_msg)r  r   r   r   r   r   r    s    r  c             C   s   t j| ||S )N)r   log_query_info)vr  Zqinfr   r   r   r  "  s    r  c             C   s
   t j| S )N)r   regional_log_stats)r   r   r   r   r  &  s    r  c             C   s
   t j| S )N)r   log_info)r  r   r   r   r  *  s    r  c             C   s
   t j| S )N)r   log_err)r  r   r   r   r  .  s    r  c             C   s
   t j| S )N)r   log_warn)r  r   r   r   r  2  s    r  c             C   s   t j| |S )N)r   verbose)r  r  r   r   r   r  6  s    r  c             C   s
   t j| S )N)r   r?   )Zatyper   r   r   r?   :  s    r?   c             C   s
   t j| S )N)r   rA   )Zaclassr   r   r   rA   >  s    rA   c             C   s   t j| |||S )N)r   storeQueryInCache)r  r   ZmsgrepZis_referralr   r   r   r  B  s    r  c             C   s   t j| |S )N)r   invalidateQueryInCache)r  r   r   r   r   r  F  s    r  c             C   s
   t j| S )N)r   r  )sr   r   r   r  J  s    r  c             C   s
   t j| S )N)r   strmodulevent)er   r   r   r  N  s    r  c             C   s   t j| |S )N)r   edns_opt_list_find)listr   r   r   r   r  R  s    r  c             C   s   t j| |||S )N)r   edns_register_option)Zopt_codebypass_cache_stageno_aggregationr   r   r   r   r  V  s    r  Fc             C   s   t |||| S )z/Wrapper function to provide keyword attributes.)r  )r   r   r  r  r   r   r   register_edns_optionZ  s    r  c             C   s   t j| |S )N)r   edns_opt_list_remove)r  r   r   r   r   r  a  s    r  c             C   s   t j| |||S )N)r   edns_opt_list_append)r  r   r:   r   r   r   r   r  e  s    r  c             C   s   t j| ||||S )N)r   inplace_cb_register)cbr   Zcbargr   r_   r   r   r   r  i  s    r  c             C   s   t j| ||S )N)r   register_inplace_cb_reply)py_cbr   r_   r   r   r   r  m  s    r  c             C   s   t j| ||S )N)r   register_inplace_cb_reply_cache)r  r   r_   r   r   r   r  q  s    r  c             C   s   t j| ||S )N)r   register_inplace_cb_reply_local)r  r   r_   r   r   r   r  u  s    r  c             C   s   t j| ||S )N)r   "register_inplace_cb_reply_servfail)r  r   r_   r   r   r   r  y  s    r  c             C   s   t j| ||S )N)r   register_inplace_cb_query)r  r   r_   r   r   r   r  }  s    r  )r   r   r   )r   r   r   )r   )FF(  sysr   Z_swig_python_version_infor   r   rJ   rI   	NameErrorbuiltinsr2   r   r,   r-   r/   r6   r$   r7   r#   r3   r9   r;   Zquery_info_swigregisterr  ZRR_CLASS_CHZRR_CLASS_HSZRR_CLASS_NONEZRR_CLASS_ANYZ	RR_TYPE_AZ
RR_TYPE_NSZ
RR_TYPE_MDZ
RR_TYPE_MFZRR_TYPE_CNAMEZRR_TYPE_SOAZ
RR_TYPE_MBZ
RR_TYPE_MGZ
RR_TYPE_MRZRR_TYPE_NULLZRR_TYPE_WKSZRR_TYPE_PTRZRR_TYPE_HINFOZRR_TYPE_MINFOZ
RR_TYPE_MXZRR_TYPE_TXTZ
RR_TYPE_RPZRR_TYPE_AFSDBZRR_TYPE_X25ZRR_TYPE_ISDNZ
RR_TYPE_RTZRR_TYPE_NSAPZRR_TYPE_NSAP_PTRZRR_TYPE_SIGZRR_TYPE_KEYZ
RR_TYPE_PXZRR_TYPE_GPOSZRR_TYPE_AAAAZRR_TYPE_LOCZRR_TYPE_NXTZRR_TYPE_EIDZRR_TYPE_NIMLOCZRR_TYPE_SRVZRR_TYPE_ATMAZRR_TYPE_NAPTRZ
RR_TYPE_KXZRR_TYPE_CERTZ
RR_TYPE_A6ZRR_TYPE_DNAMEZRR_TYPE_SINKZRR_TYPE_OPTZRR_TYPE_APLZ
RR_TYPE_DSZRR_TYPE_SSHFPZRR_TYPE_IPSECKEYZRR_TYPE_RRSIGZRR_TYPE_NSECZRR_TYPE_DNSKEYZRR_TYPE_DHCIDZRR_TYPE_NSEC3ZRR_TYPE_NSEC3PARAMSZRR_TYPE_UINFOZRR_TYPE_UIDZRR_TYPE_GIDZRR_TYPE_UNSPECZRR_TYPE_TSIGZRR_TYPE_IXFRZRR_TYPE_AXFRZRR_TYPE_MAILBZRR_TYPE_MAILAZRR_TYPE_ANYZRR_TYPE_DLVrK   rL   rC   rQ   Zpacked_rrset_key_swigregisterrT   rX   rY   r]   Z ub_packed_rrset_key_swigregisterra   Zlruhash_entry_swigregisterri   Zpacked_rrset_data_swigregisterro   rq   rs   rp   ry   rr   rt   r}   Zreply_info_swigregisterr   Zrrset_ref_swigregisterr   Zdns_msg_swigregisterr   r   r   r   r   Zsockaddr_storage_swigregisterr   r   r   r   r   r   r   r   Zmesh_state_swigregisterr   Zmesh_reply_swigregisterr   Zcomm_reply_swigregisterr   Zedns_option_swigregisterr   r   r   Zedns_data_swigregisterr   r   Zmodule_env_swigregisterr   r   Zmodule_qstate_swigregisterr	  Z	QF_BIT_CDZ	QF_BIT_ADZQF_BIT_ZZ	QF_BIT_RAZ	QF_BIT_RDZ	QF_BIT_TCZ	QF_BIT_AAZ	QF_BIT_QRZRCODE_NOERRORZRCODE_FORMERRZRCODE_SERVFAILZRCODE_NXDOMAINZRCODE_NOTIMPLZRCODE_REFUSEDZRCODE_YXDOMAINZRCODE_YXRRSETZRCODE_NXRRSETZRCODE_NOTAUTHZRCODE_NOTZONEr   r   r  r   r  r  r  r   r   r   r  r  Zconfig_strlist_swigregisterr  Zconfig_str2list_swigregisterr  Zconfig_file_swigregisterri  Zdelegpt_ns_swigregisterrr  Zdelegpt_addr_swigregisterrz  Zdelegpt_swigregisterr  r  rp  rq  ry  ZMODULE_STATE_INITIALZMODULE_WAIT_REPLYZMODULE_WAIT_MODULEZMODULE_RESTART_NEXTZMODULE_WAIT_SUBQUERYZMODULE_ERRORZMODULE_FINISHEDZMODULE_EVENT_NEWZMODULE_EVENT_PASSZMODULE_EVENT_REPLYZMODULE_EVENT_NOREPLYZMODULE_EVENT_CAPSFAILZMODULE_EVENT_MODDONEZMODULE_EVENT_ERRORZsec_status_uncheckedZsec_status_bogusZsec_status_indeterminateZsec_status_insecureZsec_status_secureZ
NO_VERBOSEZVERB_OPSZVERB_DETAILZ
VERB_QUERYZ	VERB_ALGOZinplace_cb_replyZinplace_cb_reply_cacheZinplace_cb_reply_localZinplace_cb_reply_servfailZinplace_cb_queryZinplace_cb_edns_back_parsedZinplace_cb_types_totalZPKT_QRr  ZPKT_TCZPKT_RDZPKT_CDZPKT_RAZPKT_ADr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r?   rA   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r   r   <module>   s  
	
#&++>"&9 a  Q3/7





 














