U
    
W[  ã                   @   s‚   d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ ee	e d¡ƒ d¡jƒZG d	d
„ d
ejƒZG dd„ dƒZdS )z“
Helper classes for twisted.test.test_ssl.

They are in a separate module so they will not prevent test_ssl importing if
pyOpenSSL is unavailable.
é    )ÚdivisionÚabsolute_import)ÚnativeString)Ússl)ÚFilePath)ÚSSLzutf-8s
   server.pemc                   @   s   e Zd ZdZdd„ ZdS )ÚClientTLSContexté   c                 C   s   t  t j¡S ©N)r   ÚContextÚTLSv1_METHOD)Úself© r   ú:/usr/lib/python3/dist-packages/twisted/test/ssl_helpers.pyÚ
getContext   s    zClientTLSContext.getContextN)Ú__name__Ú
__module__Ú__qualname__ÚisClientr   r   r   r   r   r      s   r   c                   @   s(   e Zd ZdZeejfdd„Zdd„ ZdS )ÚServerTLSContextr   c                 C   s   || _ || _d S r
   )ÚfilenameÚ_method)r   r   Úmethodr   r   r   Ú__init__   s    zServerTLSContext.__init__c                 C   s(   t  | j¡}| | j¡ | | j¡ |S r
   )r   r   r   Zuse_certificate_filer   Zuse_privatekey_file)r   Zctxr   r   r   r   "   s    zServerTLSContext.getContextN)	r   r   r   r   ÚcertPathr   r   r   r   r   r   r   r   r      s   r   N)Ú__doc__Z
__future__r   r   Ztwisted.python.compatr   Ztwisted.internetr   Ztwisted.python.filepathr   ZOpenSSLr   Ú__file__ÚencodeZsiblingÚpathr   ZClientContextFactoryr   r   r   r   r   r   Ú<module>   s   ÿ