o
    2c                     @   s(   d Z ddlZddlZdd Zdd ZdS )zIPv4 helper functions.    Nc                 C   s4   t | dkr
tjjd| d | d | d | d f S )zConvert an IPv4 address in binary form to text form.

    *address*, a ``bytes``, the IPv4 address in binary form.

    Returns a ``str``.
       z%u.%u.%u.%ur            )lendns	exceptionSyntaxError)address r   >/var/www/html/gps/gps/lib/python3.10/site-packages/dns/ipv4.py	inet_ntoa   s
   r   c                 C   s   t | ts	|  } | d}t|dkrtjj|D ]}| s$tjjt|dkr6|d t	dkr6tjjqzdd |D }t
jdg|R  W S  tyS   tjjw )	zConvert an IPv4 address in text form to binary form.

    *text*, a ``str``, the IPv4 address in textual form.

    Returns a ``bytes``.
       .r   r   r   0c                 S   s   g | ]}t |qS r   )int).0partr   r   r   
<listcomp>9   s    zinet_aton.<locals>.<listcomp>BBBB)
isinstancebytesencodesplitr   r   r   r	   isdigitordstructpack	Exception)textpartsr   br   r   r   	inet_aton%   s"   

r!   )__doc__r   dns.exceptionr   r   r!   r   r   r   r   <module>   s
   