Current File : //lib/python3.9/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-39.pyc |
a
[��fpN � @ s d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlmZ d dlm
Z ddlm
Z
ddlmZ ddlmZ dd lmZ zd dlZejZW n* eefy� dZG d
d� de�ZY n0 zeZW n" ey� G dd
� d
e�ZY n0 zeZW n$ e�y G dd� de�ZY n0 ddlmZ ddl m!Z! ddl"m#Z#m$Z$m%Z%m&Z& ddl'm(Z(m)Z) ddl*m+Z+m,Z,m-Z- ddl.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4 e�5e6�Z7ddd�Z8e�9ddd�Z:e�;d�Z<G dd� dee=�ZG dd� de�Z>d d!� Z?d"d#� Z@G d$d%� d%e=�ZAe�seAZ>e>ZBdS )&� )�absolute_importN)�error)�timeout� )�six)�HTTPConnection)�
HTTPException)�create_proxy_ssl_contextc @ s e Zd ZdS )�BaseSSLErrorN��__name__�
__module__�__qualname__� r r �B/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connection.pyr
s r
c @ s e Zd ZdS )�ConnectionErrorNr r r r r r ! s r c @ s e Zd ZdS )�BrokenPipeErrorNr r r r r r * s r )�HTTPHeaderDict��__version__)�ConnectTimeoutError�NewConnectionError�SubjectAltNameWarning�SystemTimeWarning)�CertificateError�match_hostname)�SKIP_HEADER�SKIPPABLE_HEADERS�
connection)�assert_fingerprint�create_urllib3_context�is_ipaddress�resolve_cert_reqs�resolve_ssl_version�ssl_wrap_socket�P i� )�http�httpsi� � z[^-!#$%&'*+.^_`|~0-9a-zA-Z]c s� e Zd ZdZed ZejejdfgZ dZ
dZdd� Ze
dd � �Zejd
d � �Zdd� Zd
d� Zdd� Zdd� Zdd� Zdd� Zd� fdd� Zddd�Z� ZS )r a5
Based on :class:`http.client.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.
- ``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:
.. code-block:: python
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&