U ��ma� � @ s� d dl Zd dlZd dlZd dlZd dlZdd� Zdd� Ze�� Z e ej�dkr`ed� e� d� e ej�d kr~ej\ZZd Znej\ZZZzeede�� �ZW n* ek r� ede � e� d� Y nX e �eee� ee � dS ) � Nc C s� | � � \}}|s|sq|| �� }|s4| �tjtj� q t�||g |�\}}}|D ]}| �|tj� qN|D ]}| �tj|� qfq d S )N)Zgetsock�timeoutZ process_fd�pycaresZARES_SOCKET_BAD�select)�channelZread_fdsZ write_fdsr ZrlistZwlistZxlist�fd� r �C/opt/alt/python38/lib64/python3.8/site-packages/pycares/__main__.py�wait_channel s r c C s |d k r$t d|tj�|�f � �n�ddtt�� f ddg}t| tj j �sP| g} | D �]�}dt|j|jf }|jdkr�|� d||jf � qT|jd kr�|� d ||j|j|jf � qT|jdkr�|� d||jf � qT|jdk� r�|� d ||j|jf � qT|jdk�r0|� d||j|j|j|j|j|jf � qT|jdk�rR|� d||jf � qT|jdk�rt|� d||jf � qT|jdk�r�|� d||j|j|j|j|j|j |j!f � qT|jdk�r�|� d||j|j"|j#|jf � qT|jdkrT|� d||j$f � qTt d�%|�� d S )NzError: (%d) %sz;; QUESTION SECTION:z;%s IN %s� z;; ANSWER SECTION:z%s %d IN %s)�AZAAAAz%s %sZCAAz %s %d %s "%s"ZCNAMEZMXz%s %d %sZNAPTRz%s %d %d "%s" "%s" "%s" %sZNSZPTRZSOAz%s %s %s %d %d %d %d %dZSRVz%s %d %d %d %sZTXTz%s "%s"� )&�printr �errno�strerror�hostname�qtype�upper� isinstance�collections�abc�IterableZttl�type�appendZhostZcritical�property�valueZcnameZpriority�orderZ preference�flagsZserviceZregexZreplacement�nameZnsnameZ hostmaster�serialZrefreshZretryZexpiresZminttlZweightZport�text�join)�result�error�parts�rZtxtr r r �cb s@ � *." r% )� � zAInvalid arguments! Usage: python -m pycares [query_type] hostname� r&