HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/sphinx/util/__pycache__/requests.cpython-310.pyc
o


$�a9�@szdZddlZddlZddlmZddlmZmZmZddl	m
Z
ddlZddlZddl
mZddlmZzddlmZWneyKddlmZYnwzdd	lmZWneyqzdd	lmZWneyndZYnwYnwd
gZdedefd
d�Zedededfdd��Zdededeeeffdd�Zdedefdd�Zdededejfdd�Zdededejfdd�Z dS)z�
    sphinx.util.requests
    ~~~~~~~~~~~~~~~~~~~~

    Simple requests package loader

    :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�contextmanager)�Any�	Generator�Union)�urlsplit)�Config)�RemovedInSphinx50Warning)�SSLError)�InsecureRequestWarning)�
User-AgentzDMozilla/5.0 (X11; Linux x86_64; rv:25.0) Gecko/20100101 Firefox/25.0�exc�returncCs@t�dt�t|t�r
dSt|dg�}|rt|dt�rdSdS)zCheck an exception is SSLError.z`is_ssl_error() is outdated and likely returns incorrect results for modern versions of Requests.T�argsrF)�warnings�warnr�
isinstancer	�getattr)rr�r�6/usr/lib/python3/dist-packages/sphinx/util/requests.py�is_ssl_error-s�
r�kwargs)NNNcksR�t���|�d�strtjdtd�dVWd�dS1s"wYdS)N�verify�ignore)�category)r�catch_warnings�getr
�filterwarnings)rrrr�ignore_insecure_warning=s�
"�r�url�configcCs^|jsdSt|dd�}|sdSt|ttf�r|St|�d}d|vr)|�d�d}|�|d�S)z�Get additional CA cert for a specific URL.

    This also returns ``False`` if verification is disabled.
    And returns ``True`` if additional CA cert not found.
    F�tls_cacertsNT��@)�
tls_verifyrr�str�tupler�splitr)rr�certs�hostnamerrr�_get_tls_cacertFsr)cCsB|jr|jSd�dtjdtjdd�tttjdd���g�S)N� z	Sphinx/%szrequests/%sz	python/%s�.�)	�
user_agent�join�sphinx�__version__�requests�mapr$�sys�version_info)rrrr�_get_user_agent\s�r5cK�|�di�}|�dd�}|r |�dt||��|�dt|��n
|�dtdd�tdi|���tj|fi|��Wd�S1sEwYdS)	zpSends a GET request like requests.get().

    This sets up User-Agent header and TLS verification automatically.�headersrNrrrr!r)�
setdefault�popr)r5�useragent_headerrr1r�rrr7rrrrrg�$�rcKr6)	zrSends a HEAD request like requests.head().

    This sets up User-Agent header and TLS verification automatically.r7rNrrrr!r)r8r9r)r5r:rr1�headr;rrrr=wr<r=)!�__doc__r3r�
contextlibr�typingrrr�urllib.parserr1r/�
sphinx.configr�sphinx.deprecationr�$requests.packages.urllib3.exceptionsr	�ImportError�urllib3.exceptionsr
r:�	Exception�boolrrr$r)r5�Responserr=rrrr�<module>sB
����