o
    ¯bÇ  ã                   @   s&   d Z ddlmZ G dd„ dejƒZdS )z/The Finger User Information Protocol (RFC 1288)é    )Úbasicc                   @   s4   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ ZdS )ÚFingerc                 C   s†   |  ¡ }|s	dg}t|ƒdkrd}nd}|d }d|v r6| d¡}|d |… }||d d … }|  |||¡S |r>|  ||¡S |  |¡S )Nó    é   r   éÿÿÿÿó   @)ÚsplitÚlenÚrfindÚforwardQueryÚgetUserÚ	getDomain)ÚselfÚlineÚpartsÚslash_wÚuserÚ	hostPlaceÚhost© r   ú:/usr/lib/python3/dist-packages/twisted/protocols/finger.pyÚlineReceived   s   

zFinger.lineReceivedc                 C   s   | j  |d ¡ | j  ¡  d S )Nó   
)Ú	transportÚwriteÚloseConnection)r   Úmessager   r   r   Ú_refuseMessage   s   zFinger._refuseMessagec                 C   ó   |   d¡ d S )Ns    Finger forwarding service denied©r   )r   r   r   r   r   r   r   r   "   ó   zFinger.forwardQueryc                 C   r   )Ns   Finger online list deniedr   )r   r   r   r   r   r   %   r    zFinger.getDomainc                 C   s"   | j  d| d ¡ |  d¡ d S )Ns   Login: r   s   No such user)r   r   r   )r   r   r   r   r   r   r   (   s   zFinger.getUserN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   r   r   
   s    r   N)Ú__doc__Útwisted.protocolsr   ÚLineReceiverr   r   r   r   r   Ú<module>   s   