
    hh	                         d dl Z d dlZd dlZd dlZ G d de j                        Z ee j                  d      r G d de j                        Zyy)    Nc                       e Zd ZdZd ZddZy)STARTTLSzDerived class to verify the peer certificate for STARTTLS.

    This class allows to pass any keyword arguments to SSL socket creation.
    c                 R    t        j                  j                  | fi | || _        y N)smtplibSMTP__init__
_sslkwargs)self	sslkwargskwargss      i/var/www/pru.catia.catastroantioquia-mas.com/tasa/lib/python3.12/site-packages/secure_smtplib/__init__.pyr	   zSTARTTLS.__init__   s     d-f-#    Nc                    | j                          | j                  d      sd}t        j                  |      | j	                  d      \  }}|dk(  rt        j                  | j                  ||fi | j                  | _        t        | j                  d      s%| j                  j                  | j                  _        t        j                  | j                        | _        d | _        d | _        i | _        d| _        ||fS )Nstarttlsz*STARTTLS extension not supported by serverr      readr   )ehlo_or_helo_if_neededhas_extnr   SMTPExceptiondocmdsslwrap_socketsockr
   hasattrrecvr   SSLFakeFilefile	helo_resp	ehlo_respesmtp_features
does_esmtp)r   keyfilecertfilemsgrespreplys         r   r   zSTARTTLS.starttls   s    ##%}}Z(>C'',,

:.u3;		 //	DI 499f-!%		++DII6DI!DN!DN"$DDOe}r   NN)__name__
__module____qualname____doc__r	   r    r   r   r   r      s    $r   r   _get_socketc                       e Zd ZdZddZd Zy)SMTPSzDerived class to verify the peer certificate for SMTPS.

        This class allows to pass any keyword arguments to SSL socket creation.
        Nc                     || _         || _        t        j                  j                  | fi | t        j
                  | _        || _        y r   )r#   r$   r   r   r	   SMTP_SSL_PORTdefault_portr
   )r   r   r#   r$   r   s        r   r	   zSMTPS.__init__4   s<    "DL$DMLL!!$1&1 ' 5 5D'DOr   c                 ,   | j                   dkD  rt        t        j                  z	  d||ff t	        j
                  ||f|      }t        j                  || j                  | j                  fi | j                  }t        j                  |      | _        |S )Nr   zconnect:)
debuglevelprintsysstderrsocketcreate_connectionr   ssl_wrap_socketr#   r$   r
   r   r   r   )r   hostporttimeout
new_sockets        r   r.   zSMTPS._get_socket;   s    "#Z$=114,HJ,, //	J  ++J7DIr   r(   )r)   r*   r+   r,   r	   r.   r-   r   r   r0   r0   /   s    		(	r   r0   )r   r9   r   r7   r   r   r   r0   r-   r   r   <module>r@      sI      
 
w|| @ 7<<'  (r   