File: //snap/core18/current/usr/lib/python3/dist-packages/urllib3/__pycache__/connection.cpython-36.pyc
3
&�[h�4 � @ s� d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlmZ m
Z d dlZd dl
Z
d dlmZ d dlmZ yd dlZejZW n, eefk
r� dZG dd� de�ZY nX yeZW n$ ek
r� G dd � d e�ZY nX d
dlmZmZmZmZ d
dl m!Z!m"Z" d
d
l#m$Z$m%Z%m&Z&m'Z'm(Z( d
dl)m*Z* d
dl+m,Z, ej-e.�Z/ddd�Z0ej1dd
d
�Z2ej3d�Z4G dd� de5�Z6G dd� dee5�ZG dd� de�Z7G dd� de7�Z8dd� Z9e�r�e7Z:e8Z7ne6Z7dS )� )�absolute_importN)�error�timeout)�HTTPConnection)�
HTTPExceptionc @ s e Zd ZdS )�BaseSSLErrorN)�__name__�
__module__�__qualname__� r r �4/usr/lib/python3/dist-packages/urllib3/connection.pyr s r c @ s e Zd ZdS )�ConnectionErrorN)r r r
r r r r r
s r
� )�NewConnectionError�ConnectTimeoutError�SubjectAltNameWarning�SystemTimeWarning)�match_hostname�CertificateError)�resolve_cert_reqs�resolve_ssl_version�assert_fingerprint�create_urllib3_context�ssl_wrap_socket)�
connection)�HTTPHeaderDict�P i� )�http�httpsi� z[^-!#$%&'*+.^_`|~0-9a-zA-Z]c @ s e Zd ZdZdS )�DummyConnectionz-Used to detect a failed ConnectionCls import.N)r r r
�__doc__r r r r r D s r c @ s^ e Zd ZdZed ZejejdfgZ dZ
dd� Zdd� Zd d
� Z
dd� Zd
d� Zddd�ZdS )r a{
Based on httplib.HTTPConnection but provides an extra constructor
backwards-compatibility layer between older and newer Pythons.
Additional keyword parameters are used to configure attributes of the connection.
Accepted parameters include:
- ``strict``: See the documentation on :class:`urllib3.connectionpool.HTTPConnectionPool`
- ``source_address``: Set the source address for the current connection.
.. note:: This is ignored for Python 2.6. It is only applied for 2.7 and 3.x
- ``socket_options``: Set specific options on the underlying socket. If not specified, then
defaults are loaded from ``HTTPConnection.default_socket_options`` which includes disabling
Nagle's algorithm (sets TCP_NODELAY to 1) unless the connection is behind a proxy.
For example, if you wish to enable TCP Keep Alive in addition to the defaults,
you might pass::
HTTPConnection.default_socket_options + [
(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1),
]
Or you may want to disable the defaults by passing an empty list (e.g., ``[]``).
r r Fc O sZ t jr|jdd � |jd�| _tjdk r4|jdd � |jd| j�| _t j
| f|�|� d S )N�strict�source_address� � �socket_options)r# r$ )�sixZPY3�pop�getr"