U
    
W[œ
  ã                   @   s¤   d Z ddlmZmZ ddlmZ G dd„ deƒZG dd„ deƒZG dd	„ d	eƒZ	G d
d„ deƒZ
G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )zO
An error to represent bad things happening in Conch.

Maintainer: Paul Swartz
é    )Úabsolute_importÚdivision)ÚUnauthorizedLoginc                   @   s   e Zd Zddd„ZdS )Ú
ConchErrorNc                 C   s   t  | ||¡ || _|| _d S ©N)Ú	ExceptionÚ__init__ÚvalueÚdata)Úselfr	   r
   © r   ú5/usr/lib/python3/dist-packages/twisted/conch/error.pyr      s    zConchError.__init__)N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdS )ÚNotEnoughAuthenticationz³
    This is thrown if the authentication is valid, but is not enough to
    successfully verify the user.  i.e. don't retry this type of
    authentication, try another one.
    N©r   r   r   Ú__doc__r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdS )ÚValidPublicKeya«  
    Raised by public key checkers when they receive public key credentials
    that don't contain a signature at all, but are valid in every other way.
    (e.g. the public key matches one in the user's authorized_keys file).

    Protocol code (eg
    L{SSHUserAuthServer<twisted.conch.ssh.userauth.SSHUserAuthServer>}) which
    attempts to log in using
    L{ISSHPrivateKey<twisted.cred.credentials.ISSHPrivateKey>} credentials
    should be prepared to handle a failure of this type by telling the user to
    re-authenticate using the same key and to include a signature with the new
    attempt.

    See U{http://www.ietf.org/rfc/rfc4252.txt} section 7 for more details.
    Nr   r   r   r   r   r       s   r   c                   @   s   e Zd ZdZdS )ÚIgnoreAuthenticationzq
    This is thrown to let the UserAuthServer know it doesn't need to handle the
    authentication anymore.
    Nr   r   r   r   r   r   3   s   r   c                   @   s   e Zd ZdZdS )ÚMissingKeyStoreErrorzŠ
    Raised if an SSHAgentServer starts receiving data without its factory
    providing a keys dict on which to read/write key data.
    Nr   r   r   r   r   r   ;   s   r   c                   @   s   e Zd ZdZdS )ÚUserRejectedKeyz0
    The user interactively rejected a key.
    Nr   r   r   r   r   r   C   s   r   c                   @   s   e Zd ZdZdS )ÚInvalidEntryzS
    An entry in a known_hosts file could not be interpreted as a valid entry.
    Nr   r   r   r   r   r   J   s   r   c                   @   s   e Zd ZdZdd„ ZdS )ÚHostKeyChangedañ  
    The host key of a remote host has changed.

    @ivar offendingEntry: The entry which contains the persistent host key that
    disagrees with the given host key.

    @type offendingEntry: L{twisted.conch.interfaces.IKnownHostEntry}

    @ivar path: a reference to the known_hosts file that the offending entry
    was loaded from

    @type path: L{twisted.python.filepath.FilePath}

    @ivar lineno: The line number of the offending entry in the given path.

    @type lineno: L{int}
    c                 C   s    t  | ¡ || _|| _|| _d S r   )r   r   ÚoffendingEntryÚpathÚlineno)r   r   r   r   r   r   r   r   c   s    
zHostKeyChanged.__init__N)r   r   r   r   r   r   r   r   r   r   Q   s   r   N)r   Z
__future__r   r   Ztwisted.cred.errorr   r   r   r   r   r   r   r   r   r   r   r   r   r   Ú<module>   s   	