ok

Mini Shell

Direktori : /proc/self/root/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/
Upload File :
Current File : //proc/self/root/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyc

�
Bu�_c@sdZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
mZmZddl
mZddlmZddlmZd	Zd
Zd�Zdefd
��YZdefd��YZdefd��YZdefd��YZdS(s]
requests.auth
~~~~~~~~~~~~~

This module contains the authentication handlers for Requests.
i����N(t	b64encodei(turlparsetstrt
basestring(textract_cookies_to_jar(tto_native_string(tparse_dict_headers!application/x-www-form-urlencodedsmultipart/form-datacCs�t|t�s:tjdj|�dt�t|�}nt|t�sztjdjt|��dt�t|�}nt|t�r�|jd�}nt|t�r�|jd�}ndt	t
dj||f��j��}|S(sReturns a Basic Auth string.s�Non-string usernames will no longer be supported in Requests 3.0.0. Please convert the object you've passed in ({!r}) to a string or bytes object in the near future to avoid problems.tcategorys�Non-string passwords will no longer be supported in Requests 3.0.0. Please convert the object you've passed in ({!r}) to a string or bytes object in the near future to avoid problems.tlatin1sBasic t:(
t
isinstanceRtwarningstwarntformattDeprecationWarningRttypetencodeRRtjointstrip(tusernametpasswordtauthstr((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt_basic_auth_strs&
	%tAuthBasecBseZdZd�ZRS(s4Base class that all auth implementations derive fromcCstd��dS(NsAuth hooks must be callable.(tNotImplementedError(tselftr((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt__call__Ks(t__name__t
__module__t__doc__R(((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyRHst
HTTPBasicAuthcBs2eZdZd�Zd�Zd�Zd�ZRS(s?Attaches HTTP Basic Authentication to the given Request object.cCs||_||_dS(N(RR(RRR((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt__init__Rs	cCs:t|jt|dd�k|jt|dd�kg�S(NRR(tallRtgetattrtNoneR(Rtother((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt__eq__VscCs||kS(N((RR$((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt__ne__\scCs t|j|j�|jd<|S(Nt
Authorization(RRRtheaders(RR((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyR_s(RRRR R%R&R(((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyROs
			t
HTTPProxyAuthcBseZdZd�ZRS(s=Attaches HTTP Proxy Authentication to a given Request object.cCs t|j|j�|jd<|S(NsProxy-Authorization(RRRR((RR((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyRgs(RRRR(((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyR)dstHTTPDigestAuthcBsVeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
RS(	s@Attaches HTTP Digest Authentication to the given Request object.cCs%||_||_tj�|_dS(N(RRt	threadingtlocalt
_thread_local(RRR((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyR os		cCsat|jd�s]t|j_d|j_d|j_i|j_d|j_d|j_	ndS(Ntinitti(
thasattrR-tTrueR.t
last_noncetnonce_counttchalR#tpost
num_401_calls(R((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pytinit_per_thread_stateusc	s�|jjd}|jjd}|jjjd�}|jjjd�}|jjjd�}d"�|d"krzd}n|j�}|dks�|dkr�d�}	|	�nZ|d	kr�d
�}
|
�n<|dkr�d�}|�n|d
kr
d�}|�n�fd�}
�d"kr)d"Sd"}t|�}|jpGd}|jrg|d|j7}nd|j||j	f}d||f}�|�}�|�}||jj
kr�|jjd7_nd|j_d|jj}t|jj�j
d�}||j
d�7}|tj�j
d�7}|tjd�7}tj|�j�d }|dkr��d|||f�}n|s�|
|d||f�}nP|dks�d|jd�kr�d|||d|f}|
||�}nd"S||j_
d|j||||f}|r7|d|7}n|rN|d|7}n|re|d|7}n|r�|d ||f7}nd!|S(#s
        :rtype: str
        trealmtnoncetqopt	algorithmtopaquetMD5sMD5-SESScSs4t|t�r!|jd�}ntj|�j�S(Nsutf-8(R
RRthashlibtmd5t	hexdigest(tx((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pytmd5_utf8�stSHAcSs4t|t�r!|jd�}ntj|�j�S(Nsutf-8(R
RRR>tsha1R@(RA((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pytsha_utf8�ssSHA-256cSs4t|t�r!|jd�}ntj|�j�S(Nsutf-8(R
RRR>tsha256R@(RA((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pytsha256_utf8�ssSHA-512cSs4t|t�r!|jd�}ntj|�j�S(Nsutf-8(R
RRR>tsha512R@(RA((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pytsha512_utf8�scs�d||f�S(Ns%s:%s((tstd(t	hash_utf8(sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt<lambda>�st/t?s%s:%s:%ss%s:%sis%08xsutf-8iitautht,s%s:%s:%s:%s:%ss>username="%s", realm="%s", nonce="%s", uri="%s", response="%s"s
, opaque="%s"s, algorithm="%s"s
, digest="%s"s , qop="auth", nc=%s, cnonce="%s"s	Digest %sN(R-R4tgetR#tupperRtpathtqueryRRR2R3RRttimetctimetosturandomR>RDR@tsplit(RtmethodturlR8R9R:R;R<t
_algorithmRBRERGRItKDtentdigtp_parsedRTtA1tA2tHA1tHA2tncvalueRJtcnoncetrespdigtnoncebittbase((RLsJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pytbuild_digest_headers~										!cKs|jrd|j_ndS(s)Reset num_401_calls counter on redirects.iN(tis_redirectR-R6(RRtkwargs((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pythandle_redirect�s	cKs�d|jkodkns/d|j_|S|jjdk	r]|jjj|jj�n|jj	dd�}d|j
�kr~|jjdkr~|jjd7_tjdd	tj
�}t|jd|d
d��|j_|j|j�|jj�}t|j|j|j�|j|j�|j|j|j�|jd<|jj||�}|jj|�||_|Sd|j_|S(
so
        Takes the given response and tries digest-auth, if needed.

        :rtype: requests.Response
        i�i�iswww-authenticateR/tdigestisdigest tflagstcountR'N(tstatus_codeR-R6R5R#trequesttbodytseekR(RRtlowertretcompilet
IGNORECASERtsubR4tcontenttclosetcopyRt_cookiestrawtprepare_cookiesRjR[R\t
connectiontsendthistorytappend(RRRlts_authtpattprept_r((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt
handle_401�s.	$$
	cCs�|j�|jjr8|j|j|j�|jd<ny|jj�|j_	Wnt
k
rpd|j_	nX|jd|j
�|jd|j�d|j_|S(NR'tresponsei(R7R-R2RjR[R\R(RsttellR5tAttributeErrorR#t
register_hookR�RmR6(RR((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyRs
"
cCs:t|jt|dd�k|jt|dd�kg�S(NRR(R!RR"R#R(RR$((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyR%*scCs||kS(N((RR$((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyR&0s(RRRR R7RjRmR�RR%R&(((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyR*ls		
	f		,		(RRXRvRVR>R+Rtbase64RtcompatRRRtcookiesRt_internal_utilsRtutilsRtCONTENT_TYPE_FORM_URLENCODEDtCONTENT_TYPE_MULTI_PARTRtobjectRRR)R*(((sJ/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/requests/auth.pyt<module>s$	,

Zerion Mini Shell 1.0