U
    Â½„bE  ã                   @   s,   d dl mZmZmZ ddd„Zddd„ZdS )	é   )Úcreate_urllib3_contextÚresolve_cert_reqsÚresolve_ssl_versionNc                 C   s4   | dkrdS |dkrdS | j dkr0|r0|jr0dS dS )a?  
    Returns True if the connection requires an HTTP CONNECT through the proxy.

    :param URL proxy_url:
        URL of the proxy.
    :param ProxyConfig proxy_config:
        Proxy configuration from poolmanager.py
    :param str destination_scheme:
        The scheme of the destination. (i.e https, http, etc)
    NFÚhttpÚhttpsT)ÚschemeZuse_forwarding_for_https)Ú	proxy_urlZproxy_configZdestination_scheme© r	   ú6/tmp/pip-unpacked-wheel-_z7g_w1e/urllib3/util/proxy.pyÚconnection_requires_http_tunnel   s    ÿþýr   c                 C   s6   t t| ƒt|ƒd�}|s2|s2|s2t|dƒr2| ¡  |S )z\
    Generates a default proxy ssl context if one hasn't been provided by the
    user.
    )Ússl_versionÚ	cert_reqsÚload_default_certs)r   r   r   Úhasattrr   )r   r   Úca_certsÚca_cert_dirZca_cert_dataÚssl_contextr	   r	   r
   Úcreate_proxy_ssl_context%   s    þÿþýür   )NNN)NNN)Ússl_r   r   r   r   r   r	   r	   r	   r
   Ú<module>   s        ÿ
"     ÿ