Server : LiteSpeed
System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User : nandedex ( 1060)
PHP Version : 8.1.33
Disable Function : NONE
Directory :  /opt/cppython/lib/python3.8/site-packages/urllib3/contrib/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]


Current File : //opt/cppython/lib/python3.8/site-packages/urllib3/contrib/__pycache__/ntlmpool.cpython-38.pyc
U

N��g��@spdZddlmZddlZddlmZddlmZddlmZddl	m
Z
e�d	e�ee
�ZGd
d�de�ZdS)z
NTLM authenticating pool, contributed by erikcederstran

Issue #10, see: http://code.google.com/p/urllib3/issues/detail?id=10
�)�absolute_importN)�	getLogger)�ntlm�)�HTTPSConnectionPool)�HTTPSConnectiona#The 'urllib3.contrib.ntlmpool' module is deprecated and will be removed in urllib3 v2.0 release, urllib3 is not able to support it properly due to reasons listed in issue: https://github.com/urllib3/urllib3/issues/2282. If you are a user of this module please comment in the mentioned issue.cs:eZdZdZdZ�fdd�Zdd�Zd�fd
d�	Z�ZS)
�NTLMConnectionPoolzQ
    Implements an NTLM authentication version of an urllib3 connection pool
    �httpscsLtt|�j||�||_||_|�dd�}|d��|_|d|_||_	dS)z�
        authurl is a random URL on the server that is protected by NTLM.
        user is the Windows user, probably in the DOMAIN\username format.
        pw is the password for the user.
        �\�rN)
�superr�__init__�authurl�rawuser�split�upper�domain�user�pw)�selfrrr�args�kwargsZ
user_parts��	__class__��E/opt/cppython/lib/python3.8/site-packages/urllib3/contrib/ntlmpool.pyr
"s
zNTLMConnectionPool.__init__c
Cs�|jd7_t�d|j|j|j�ddi}d}d}t|j|jd�}dt�|j	�||<t�d	|�|�
d
|jd|�|��}t|j
�}t�d|j|j�t�d|�t�d
|�d��d|_||�d�}d}|D] }	|	dd�dkr�|	dd�}q�|dk�rtd|||f��t�|�\}
}t�|
|j|j|j|�}d|||<t�d	|�|�
d
|jd|�|��}t�d|j|j�t�dt|j
��t�d
|��dd��|jdk�r�|jdk�r�td��td|j|jf��d|_t�d�|S)Nrz3Starting NTLM HTTPS connection no. %d: https://%s%s�
Connection�
Keep-Alive�
Authorizationzwww-authenticate)�host�portzNTLM %szRequest headers: %s�GETzResponse status: %s %szResponse headers: %szResponse data: %s [...]�dz, �zNTLM z!Unexpected %s response header: %s��i�z3Server rejected request: wrong username or passwordzWrong server response: %s %szConnection established)�num_connections�log�debugrrrr rZcreate_NTLM_NEGOTIATE_MESSAGEr�request�getresponse�dict�headers�status�reason�read�fpr�	ExceptionZparse_NTLM_CHALLENGE_MESSAGEZ create_NTLM_AUTHENTICATE_MESSAGErrr)
rr+Z
req_headerZresp_header�conn�resZreshdrZauth_header_valuesZauth_header_value�sZServerChallengeZNegotiateFlagsZauth_msgrrr�	_new_conn0sn��


���
zNTLMConnectionPool._new_connN�Tc	s0|dkri}d|d<tt|��|||||||�S)Nrr)rr�urlopen)r�method�url�bodyr+�retries�redirect�assert_same_hostrrrr6ss

�zNTLMConnectionPool.urlopen)NNr5TT)	�__name__�
__module__�__qualname__�__doc__�schemer
r4r6�
__classcell__rrrrrsG�r)r@�
__future__r�warnings�loggingrr�rZpackages.six.moves.http_clientr�warn�DeprecationWarningr=r&rrrrr�<module>s�

F1le Man4ger