Viewing File: /opt/alt/python38/lib/python3.8/site-packages/urllib3/contrib/__pycache__/ntlmpool.cpython-38.pyc

U

ØÕ`ºã@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
    ZhttpscsLtt|ƒ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__©úI/opt/alt/python38/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| 
¡ƒ}t d|j|j¡t d|¡t d
| d¡¡d|_|| d¡}d}|D] }	|	dd…dkrÖ|	dd…}qÖ|dkrtd|||fƒ‚t |¡\}
}t |
|j|j|j|¡}d|||<t d	|¡| 
d
|jd|¡| ¡}t d|j|j¡t dt| 
¡ƒ¡t d
| ¡dd…¡|jdkrà|jdkrÌtdƒ‚td|j|jfƒ‚d|_t d¡|S)Nr
z3Starting NTLM HTTPS connection no. %d: https://%s%sÚ
Connectionú
Keep-AliveZ
Authorizationzwww-authenticate)ÚhostÚportzNTLM %szRequest headers: %sZGETzResponse 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)Znum_connectionsÚlogÚdebugrr
rrrZcreate_NTLM_NEGOTIATE_MESSAGErZrequestZgetresponseÚdictZ
getheadersZstatusÚreasonÚreadÚfprÚ	ExceptionZparse_NTLM_CHALLENGE_MESSAGEZ create_NTLM_AUTHENTICATE_MESSAGErrr)
rÚheadersZ
req_headerZresp_headerZconnÚresZreshdrZauth_header_valuesZauth_header_valueÚsZServerChallengeZNegotiateFlagsZauth_msgrrrÚ	_new_conn0snüÿ

ÿÿÿ
zNTLMConnectionPool._new_connNéTc	s0|dkri}d|d<tt|ƒ |||||||¡S)Nrr)rrÚurlopen)rÚmethodZurlZbodyr)ZretriesZredirectZassert_same_hostrrrr.ss

ÿzNTLMConnectionPool.urlopen)NNr-TT)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__Zschemerr,r.Ú
__classcell__rrrrrsGør)r3Z
__future__rÚwarningsZloggingrrÚrZpackages.six.moves.http_clientrÚwarnÚDeprecationWarningr0r"rrrrrÚ<module>sû
Back to Directory File Manager