File: //lib64/python3.6/site-packages/M2Crypto/SSL/__pycache__/cb.cpython-36.opt-1.pyc
3
�Y�
� @ s� d dl mZ d dlZd dlmZmZ ejr:d dlmZm Z ddddd gZ
d
d� Zejej
ejejgZdd� Zdd� Zd
d � ZdS )� )�absolute_importN)�m2�util)�Any�List�unknown_issuer�ssl_verify_callback_stub�ssl_verify_callback�$ssl_verify_callback_allow_unknown_ca�ssl_info_callbackc C s |S )N� )�ssl_ctx_ptr�x509_ptr�errnum�errdepth�okr r �/usr/lib64/python3.6/cb.pyr s c C sn ddl m} |j� t| � }|tkrP|j� rPtjjdt j
|� � tjj� d}|rj|j� |krfd}nd}|S )Nr )�Contextzpolicy: %s: permitted...
� )
ZM2Crypto.SSL.Contextr Zctxmap�intr Zget_allow_unknown_ca�sys�stderr�writer Zx509_get_verify_error�flushZget_verify_depth)r
r r r r r Zssl_ctxr r r r s
c C s |j � }|tkrd} | S )Nr )Z get_errorr )r Zstorer r r r r
2 s c C s | t j @ }|t j@ rd}n|t j@ r,d}nd}| t j@ rbtjjd|t j|�f � tjj � d S | t j
@ r�|s�tjjd|t j|�f � tjj � n$tjjd|t j|�f � tjj � d S | t j@ �r| t j@ r�d}nd}tjjd |t j
|�t j|�f � tjj � d S d S )
NzSSL connectz
SSL acceptzSSL state unknownz
LOOP: %s: %s
zFAILED: %s: %s
z
INFO: %s: %s
�readr zALERT: %s: %s: %s
)r ZSSL_ST_MASKZSSL_ST_CONNECTZ
SSL_ST_ACCEPTZSSL_CB_LOOPr r r Zssl_get_state_vr ZSSL_CB_EXITZSSL_CB_ALERTZSSL_CB_READZssl_get_alert_type_vZssl_get_alert_desc_v)�where�retZssl_ptr�w�stater r r r ; s:
)Z
__future__r r ZM2Cryptor r Zpy27plusZtypingr r �__all__r Z&X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERTZ,X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLYZ*X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATUREZX509_V_ERR_CERT_UNTRUSTEDr r r
r r r r r �<module> s