File: //usr/local/CyberPanel/lib64/python3.10/site-packages/DNS/__pycache__/lazy.cpython-310.pyc
o
��hv
� @ sd d dl mZ d dlmZ G dd� de�ZG dd� de�Zddd �Zdd
d�Zddd
�Zddd�Z dS )� )�Base)�ServerErrorc @ � e Zd ZdS )�NoDataErrorN��__name__�
__module__�__qualname__� r
r
�>/usr/local/CyberPanel/lib/python3.10/site-packages/DNS/lazy.pyr
� r c @ r )�StatusErrorNr r
r
r
r r
r r
� c C s0 t jd g krt �� t| |�}|sdS |d S )�<convenience routine for doing a reverse lookup of an address�serverN� )r �defaults�DiscoverNameServers�revlookupall)�name�timeout�namesr
r
r � revlookup s
r c C sB | � d�}|�� d�|�d }d}t|||�}|jtjd� |S )r �.z
.in-addr.arpa�ptr)�key)�split�reverse�join� dnslookup�sort�str�__len__)r r �a�b�qtyper r
r
r r s
r c C s� t jd g krt �� t j| |d�j|d�}|jd dkr*td|jd |jd ��t|j�dkrAt jd rAt j| |d�j|d�}|jd dkrUtd|jd |jd ��d
d� |jD �S )zAconvenience routine to return just answer data for any query typer )r r% )r �status�NOERRORzDNS query status: %s�rcoder �
server_rotatec S s g | ]}|d �qS )�datar
)�.0�xr
r
r �
<listcomp>0 s zdnslookup.<locals>.<listcomp>) r r r �
DnsRequest�req�headerr �len�answers)r r% r �resultr
r
r r # s ��r c C s d}t | ||�}|S )z�
convenience routine for doing an MX lookup of a name. returns a
sorted list of (preference, mail exchanger) records
�mx)r )r r r% �lr
r
r �mxlookup2 s r6 N)r )
� r r �
IndexErrorr r
r r r r6 r
r
r
r �<module> s