Your IP : 216.73.216.213


Current Path : /opt/alt/python37/lib64/python3.7/site-packages/twisted/mail/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib64/python3.7/site-packages/twisted/mail/__pycache__/_cred.cpython-37.pyc

B

��d^�@s�dZddlmZmZddlZddlZddlmZddlm	Z	ddl
mZddlm
Z
ddlmZmZee�Gd	d
�d
��Zee�Gdd�d��Zee�Gd
d�d��Zee�Gdd�de	j��Zee�Gdd�de	j��Zd
ddddgZdS)z*
Credential managers for L{twisted.mail}.
�)�absolute_import�divisionN)�implementer)�credentials)�nativeString)�IllegalClientResponse)�IClientAuthentication�IChallengeResponsec@s$eZdZdd�Zdd�Zdd�ZdS)�CramMD5ClientAuthenticatorcCs
||_dS)N)�user)�selfr�r
�E/opt/alt/python37/lib64/python3.7/site-packages/twisted/mail/_cred.py�__init__sz#CramMD5ClientAuthenticator.__init__cCsdS)NsCRAM-MD5r
)rr
r
r�getNamesz"CramMD5ClientAuthenticator.getNamecCs*tj||tjd���}|jd|�d�S)N)Z	digestmod� �ascii)�hmacZHMAC�hashlib�md5�	hexdigestr�encode)r�secret�chal�responser
r
r�challengeResponsesz,CramMD5ClientAuthenticator.challengeResponseN)�__name__�
__module__�__qualname__rrrr
r
r
rr
sr
c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�LOGINAuthenticatorcCs||_|j|_dS)N)r�challengeUsernamer)rrr
r
rr'szLOGINAuthenticator.__init__cCsdS)NsLOGINr
)rr
r
rr,szLOGINAuthenticator.getNamecCs|j|_|jS)N)�challengeSecretrr)rrrr
r
rr 0sz$LOGINAuthenticator.challengeUsernamecCs|S)Nr
)rrrr
r
rr!6sz"LOGINAuthenticator.challengeSecretN)rrrrrr r!r
r
r
rr%src@s$eZdZdd�Zdd�Zdd�ZdS)�PLAINAuthenticatorcCs
||_dS)N)r)rrr
r
rr>szPLAINAuthenticator.__init__cCsdS)NsPLAINr
)rr
r
rrBszPLAINAuthenticator.getNamecCsd|jd|S)N�)r)rrrr
r
rrFsz$PLAINAuthenticator.challengeResponseN)rrrrrrr
r
r
rr"<sr"c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�LOGINCredentialscCs(ddg|_ddg|_tj�|dd�dS)Ns	Passwords
User Namespasswordsusername)�
challenges�	responsesr�UsernamePasswordr)rr
r
rrMs

zLOGINCredentials.__init__cCs
|j��S)N)r%�pop)rr
r
r�getChallengeSszLOGINCredentials.getChallengecCst|t|j���|�dS)N)�setattrrr&r()rrr
r
r�setResponseWszLOGINCredentials.setResponsecCs
t|j�S)N)�boolr%)rr
r
r�moreChallenges[szLOGINCredentials.moreChallengesN)rrrrr)r+r-r
r
r
rr$Ksr$c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�PLAINCredentialscCstj�|dd�dS)N)rr'r)rr
r
rrbszPLAINCredentials.__init__cCsdS)N�r
)rr
r
rr)fszPLAINCredentials.getChallengecCs0|�d�}t|�dkrtd��|\}|_|_dS)Nr#�z*Malformed Response - wrong number of parts)�split�lenr�username�password)rr�partsZuselessr
r
rr+js

zPLAINCredentials.setResponsecCsdS)NFr
)rr
r
rr-rszPLAINCredentials.moreChallengesN)rrrrr)r+r-r
r
r
rr.`sr.)�__doc__�
__future__rrrrZzope.interfacerZtwisted.credrZtwisted.python.compatrZtwisted.mail._exceptrZtwisted.mail.interfacesrr	r
rr"r'r$r.�__all__r
r
r
r�<module>s$