HEX
Server: Apache
System: Linux msm5694.mjhst.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: camjab_ssh (1000)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //lib64/python3.6/http/__pycache__/client.cpython-36.opt-2.pyc
3

TSe@s\ddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
ddddddd	d
ddd
dddddddgZdZdZ
dZdZdZdZejejjddejjjDZdZdZdZejd jZejd!jZejd"Z d#d$d%hZ!d?d'd(Z"Gd)d*d*ej#j$Z%e%fd+d,Z&Gd-ddej'Z(Gd.ddZ)yddl*Z*Wne+k
rVYnXGd/d0d0e)Z,ej-d0Gd1dde.Z/Gd2dde/Z0Gd3dde/Z1Gd4dde/Z2Gd5dde/Z3Gd6d	d	e/Z4Gd7d
d
e/Z5Gd8dde/Z6Gd9d
d
e6Z7Gd:dde6Z8Gd;dde6Z9Gd<dde/Z:Gd=dde/Z;Gd>dde<e:Z=e/Z>dS)@N)urlsplitHTTPResponseHTTPConnection
HTTPExceptionNotConnectedUnknownProtocolUnknownTransferEncodingUnimplementedFileModeIncompleteRead
InvalidURLImproperConnectionStateCannotSendRequestCannotSendHeaderResponseNotReady
BadStatusLineLineTooLongRemoteDisconnectederror	responsesPiZUNKNOWNZIdlezRequest-startedzRequest-sentcCsi|]}|j|qS)phrase).0vrr#/usr/lib64/python3.6/http/client.py
<dictcomp>ksriids[^:\s][^:\r\n]*s\n(?![ \t])|\r(?![ \t\n])z[- ]ZPATCHZPOSTZPUTdatacCsfy
|jdStk
r`}z:t|j|j|j|jd|j||j|j|fdWYdd}~XnXdS)Nzlatin-1z`%s (%.20r) is not valid Latin-1. Use %s.encode('utf-8') if you want to send it encoded in UTF-8.)encodeUnicodeEncodeErrorencodingobjectstartendtitle)rnameerrrrr_encodes
r'c@seZdZddZdS)HTTPMessagecCsn|jd}t|}g}d}xL|jD]@}|d|j|krDd}n|ddjsXd}|r&|j|q&W|S)N:r)lowerlenkeysisspaceappend)selfr%nZlstZhitlinerrrgetallmatchingheaderss
z!HTTPMessage.getallmatchingheadersN)__name__
__module____qualname__r3rrrrr(sr(cCs|g}xR|jtd}t|tkr(td|j|t|tkrJtdt|d	krPqWdj|jd}t	j
j|dj|S)
Nr*zheader linezgot more than %d headers

z
iso-8859-1)_class)r7r8r9)
readline_MAXLINEr,rr/_MAXHEADERSrjoindecodeemailparserZParserZparsestr)fpr:headersr2Zhstringrrr
parse_headerss

rDcseZdZd@ddZddZddZd	d
ZddZfd
dZfddZ	ddZ
ddZdAddZddZ
ddZddZddZdd Zd!d"Zd#d$Zd%d&ZdCd(d)ZdEd*d+ZdGfd,d-	Zd.d/Zd0d1Zd2d3ZdHd4d5Zd6d7Zd8d9Zd:d;Zd<d=Zd>d?Z Z!S)IrrNcCsR|jd|_||_||_d|_|_t|_t|_t|_	t|_
t|_t|_t|_
dS)Nrb)makefilerB
debuglevel_methodrCmsg_UNKNOWNversionstatusreasonchunked
chunk_leftlength
will_close)r0sockrGmethodurlrrr__init__szHTTPResponse.__init__cCst|jjtdd}t|tkr*td|jdkrBtdt||sNt	dy|j
dd\}}}WnFtk
ry|j
dd\}}d}Wntk
rd}YnXYnX|jd	s|j
t|y$t|}|d
ks|dkrt|Wntk
rt|YnX|||fS)Nr*z
iso-8859-1zstatus linerzreply:z-Remote end closed connection without responsezHTTP/ri)strrBr;r<r,rrGprintreprrsplit
ValueError
startswith_close_connrint)r0r2rKrLrMrrr_read_statuss2

zHTTPResponse._read_statuscCs|jdk	rdSxh|j\}}}|tkr(PxJ|jjtd}t|tkrNtd|j}|s\P|j	dkr*t
d|q*WqW||_|_|j|_
|dkrd|_n|jdrd	|_nt|t|j|_|_|j	dkrx&|jD]}t
d|d
|jj|qW|jjd}|r,|jdkr,d
|_d|_nd|_|j|_d|_|jjd}|jjd}|r|jryt||_Wntk
rd|_YnX|jdkrd|_nd|_|tks|tksd|kodkns|jdkrd|_|jr|jr|jdkrd
|_dS)Nr*zheader linerzheader:HTTP/1.0HTTP/0.9
zHTTP/1.r)ztransfer-encodingrNTFzcontent-lengthrHEAD)rarb)rCr`ZCONTINUErBr;r<r,rstriprGrYcoderLrMrKr]rrDrIgetr+rNrO_check_closerQrPr_r\Z
NO_CONTENTZNOT_MODIFIEDrH)r0rKrLrMskiphdrZtr_encrPrrrbegin,sf






zHTTPResponse.begincCs|jjd}|jdkr:|jjd}|r6d|jkr6dSdS|jjdrJdS|r^d|jkr^dS|jjd}|r~d|jkr~dSdS)NZ
connectionrdcloseTFz
keep-alivezproxy-connection)rCrirKr+)r0ZconnZpconnrrrrj|s
zHTTPResponse._check_closecCs|j}d|_|jdS)N)rBrn)r0rBrrrr^szHTTPResponse._close_connc
s$ztjWd|jr|jXdS)N)superrnrBr^)r0)	__class__rrrnszHTTPResponse.closecstj|jr|jjdS)N)roflushrB)r0)rprrrqs
zHTTPResponse.flushcCsdS)NTr)r0rrrreadableszHTTPResponse.readablecCs
|jdkS)N)rB)r0rrrisclosedszHTTPResponse.isclosedcCs|jdkrdS|jdkr$|jdS|dk	rRt|}|j|}t|d|jS|jr`|jS|j	dkrv|jj
}n6y|j|j	}Wntk
r|jYnXd|_	|j|SdS)Nr9rfr)
rBrHr^	bytearrayreadinto
memoryviewtobytesrN_readall_chunkedrPread
_safe_readr
)r0amtbr1srrrrys*



zHTTPResponse.readcCs|jdkrdS|jdkr$|jdS|jr4|j|S|jdk	r^t||jkr^t|d|j}|jj|}|r~|r~|jn&|jdk	r|j|8_|js|j|S)Nrrf)	rBrHr^rN_readinto_chunkedrPr,rvru)r0r|r1rrrrus$






zHTTPResponse.readintocCsp|jjtd}t|tkr$td|jd}|dkrB|d|}y
t|dStk
rj|jYnXdS)Nr*z
chunk size;r)	rBr;r<r,rfindr_r\r^)r0r2irrr_read_next_chunk_sizes

z"HTTPResponse._read_next_chunk_sizecCs>x8|jjtd}t|tkr&td|s,P|dkrPqWdS)Nr*ztrailer line
r8r9)rr8r9)rBr;r<r,r)r0r2rrr_read_and_discard_trailersz&HTTPResponse._read_and_discard_trailercCsl|j}|sh|dk	r|jdy|j}Wntk
rDtdYnX|dkrb|j|jd}||_|S)NrVr9r)rOrzrr\r
rr^)r0rOrrr_get_chunk_left s
zHTTPResponse._get_chunk_leftcCsdg}y8x,|j}|dkrP|j|j|d|_qWdj|Stk
r^tdj|YnXdS)Nrr9)rr/rzrOr>r
)r0valuerOrrrrx8s

zHTTPResponse._readall_chunkedcCsd}t|}yvxp|j}|dkr$|St||krL|j|}|||_||S|d|}|j|}||d}||7}d|_qWWn(tk
rtt|d|YnXdS)Nr)rvrr,_safe_readintorOr
bytes)r0r|total_bytesmvbrOr1temp_mvbrrrr~Fs$


zHTTPResponse._readinto_chunkedcCsXg}xH|dkrL|jjt|t}|s4tdj|||j||t|8}qWdj|S)Nrr9)rBrymin	MAXAMOUNTr
r>r/r,)r0r{r}chunkrrrrz^s

zHTTPResponse._safe_readcCsd}t|}xt|t|krtt|kr@|dt}|jj|}n|jj|}|sjtt|d|t|||d}||7}qW|S)Nr)rvr,rrBrur
r)r0r|rrrr1rrrruszHTTPResponse._safe_readintor*cCs|jdks|jdkrdS|jr(|j|S|jdk	rJ|dksD||jkrJ|j}y|jj|}Wn*tk
r|dkrt|jjd}YnX|r|r|jn|jdk	r|jt|8_|S)Nrfr9rrii@)	rBrHrN_read1_chunkedrPread1r\r^r,)r0r1resultrrrrs"



zHTTPResponse.read1cCs4|jdks|jdkrdS|jr(|j|S|jj|S)Nrfr9)rBrHrN
_peek_chunkedpeek)r0r1rrrrs

zHTTPResponse.peekcs|jdks|jdkrdS|jr*tj|S|jdk	rL|dksF||jkrL|j}|jj|}|rl|rl|jn|jdk	r|jt|8_|S)Nrfr9r)rBrHrNror;rPr^r,)r0limitr)rprrr;s


zHTTPResponse.readlinecCsf|j}|dks|dkrdSd|ko.|kns8|}|jj|}|jt|8_|sbtd|S)Nrr9)rrBrrOr,r
)r0r1rOryrrrrszHTTPResponse._read1_chunkedcCsBy|j}Wntk
r dSX|dkr.dS|jj|d|S)Nr9)rr
rBr)r0r1rOrrrrszHTTPResponse._peek_chunkedcCs
|jjS)N)rBfileno)r0rrrrszHTTPResponse.filenocCsH|jdkrt|jj|p|}t|ts6t|dr:|Sdj|SdS)N__iter__z, )rCrZget_all
isinstancerXhasattrr>)r0r%defaultrCrrr	getheaders
zHTTPResponse.getheadercCs|jdkrtt|jjS)N)rCrlistitems)r0rrr
getheaderss
zHTTPResponse.getheaderscCs|S)Nr)r0rrrrszHTTPResponse.__iter__cCs|jS)N)rC)r0rrrinfoszHTTPResponse.infocCs|jS)N)rT)r0rrrgeturls
zHTTPResponse.geturlcCs|jS)N)rL)r0rrrgetcodeszHTTPResponse.getcode)rNN)N)rr)rr)r)N)"r4r5r6rUr`rmrjr^rnrqrrrsryrurrrrxr~rzrrrr;rrrrrrrrr
__classcell__rr)rprrs<	
!P

 "

	

c@seZdZdZdZeZeZdZ	dZ
eddZeddZ
d	ejd	fd
dZd.dd
ZddZddZddZddZddZddZddZddZd/dd Zd0d!d"Zd#d$Zd1dd%d&d'Zd	ifdd%d(d)Zd*d+Zd,d-Z d	S)2rrdzHTTP/1.1r*rcCst|tjS)N)rio
TextIOBase)streamrrr
_is_textIO(szHTTPConnection._is_textIOcCsd|dkr|jtkrdSdSt|dr*dSyt|}|jStk
rLYnXt|tr`t|SdS)Nrry)	upper_METHODS_EXPECTING_BODYrrvnbytes	TypeErrorrrXr,)bodyrSZmvrrr_get_content_length.s

z"HTTPConnection._get_content_lengthNcCs\||_||_d|_g|_d|_t|_d|_d|_d|_	i|_
|j||\|_|_
tj|_dS)N)timeoutsource_addressrR_buffer_HTTPConnection__response_CS_IDLE_HTTPConnection__staterH_tunnel_host_tunnel_port_tunnel_headers
_get_hostporthostportsocketZcreate_connection_create_connection)r0rrrrrrrrUNszHTTPConnection.__init__cCs<|jrtd|j||\|_|_|r.||_n
|jjdS)Nz.Can't set up tunnel for established connection)rRRuntimeErrorrrrrclear)r0rrrCrrr
set_tunnelaszHTTPConnection.set_tunnelcCs|dkr|jd}|jd}||kryt||dd}WnHtk
r||dddkrh|j}ntd||ddYnX|d|}n|j}|r|ddkr|ddkr|dd	}||fS)
Nr)]r*rWznonnumeric port: '%s'r[rr)rfindr_r\default_portr)r0rrrjrrrrys

zHTTPConnection._get_hostportcCs
||_dS)N)rG)r0levelrrrset_debuglevelszHTTPConnection.set_debuglevelcCsd|j|jf}|jd}|j|x6|jjD](\}}d||f}|jd}|j|q0W|jd|j|j|jd}|j	\}}	}
|	t
jjkr|j
td|	|
jfxP|jjtd}t|tkrtd	|sP|dkrP|jdkrtd
|jqWdS)NzCONNECT %s:%d HTTP/1.0
asciiz%s: %s
zlatin-1
)rSzTunnel connection failed: %d %sr*zheader liner8r9rzheader:)rr8r9)rrrsendrrresponse_classrRrHr`http
HTTPStatusZOKrnOSErrorrgrBr;r<r,rrGrYr?)r0Zconnect_strZ
connect_bytesheaderrZ
header_strZheader_bytesresponserKrhmessager2rrr_tunnels2





zHTTPConnection._tunnelcCsB|j|j|jf|j|j|_|jjtjtj	d|j
r>|jdS)Nr*)rrrrrrRZ
setsockoptrZIPPROTO_TCPZTCP_NODELAYrr)r0rrrconnects
zHTTPConnection.connectcCsBt|_z|j}|r d|_|jWd|j}|r<d|_|jXdS)N)rrrRrnr)r0rRrrrrrnszHTTPConnection.closecCs|jdkr |jr|jnt|jdkr8tdt|d}t|dr|jdkrXtd|j|}|rx|jdkrxtdx.|j	|}|sP|r|j
d}|jj|qzWdSy|jj|WnNtk
r
t
|tjrx*|D]}|jj|qWntdt|YnXdS)	Nrzsend:i ryzsendIng a read()ablezencoding file using iso-8859-1z
iso-8859-1z9data should be a bytes-like object or an iterable, got %r)rR	auto_openrrrGrYrZrrryrZsendallrrcollectionsIterabletype)r0r	blocksizer	datablockdrrrrs:








zHTTPConnection.sendcCs|jj|dS)N)rr/)r0r}rrr_outputszHTTPConnection._outputccsdd}|jdkrtd|j|}|r6|jdkr6tdx(|j|}|sHP|rV|jd}|Vq8WdS)Ni rzsendIng a read()ablezencoding file using iso-8859-1z
iso-8859-1)rGrYrryr)r0rrrrrrrr_read_readables



zHTTPConnection._read_readableFcCs$|jjddj|j}|jdd=|j||dk	r t|drN|j|}nZyt|WnFtk
ryt|}Wn$tk
rtdt	|YnXYnX|f}xZ|D]R}|s|j
dkrtdq|r|jdkrt
|dd	jd
|d}|j|qW|r |jdkr |jddS)
Nr9s
ryzAmessage_body should be a bytes-like object or an iterable, got %rrzZero length chunk ignoredrdXz
rs0

)r9r9)rextendr>rrrrvriterrrGrY	_http_vsnr,r)r0message_bodyencode_chunkedrIZchunksrrrr_send_outputs4




zHTTPConnection._send_outputc

Cs|jr|jjrd|_|jtkr(t|_n
t|j||_|s@d}tj|}|rht	d|d|j
dd|||jf}|j|j
d|jdkr|sd}|jd	rt|\}}}}}|ry|j
d}	Wntk
r|j
d
}	YnX|jd|	n|jr|j}
|j}n|j}
|j}y|
j
d}Wn tk
rJ|
j
d
}YnX|
jdd
krhd|d}||jkr|jd|n|jd}|jdd||f|s|jddndS)N/z&URL can't contain control characters. z (found at least )z%s %s %srrdrWrZidnaZHostr)r[]z%s:%szAccept-EncodingZidentity)rrsrr_CS_REQ_STARTEDr
rH!_contains_disallowed_url_pchar_researchrgroup
_http_vsn_strrrrr]rr	putheaderrrrrrrr?)
r0rSrT	skip_hostskip_accept_encodingmatchrequestZnetlocZnilZ
netloc_encrrZhost_encrrr
putrequest9sT





zHTTPConnection.putrequestcGs|jtkrtt|dr$|jd}t|s:td|ft|}xht|D]\\}}t|drn|jd||<nt	|t
rt|jd||<t||rLtd||fqLWdj
|}|d|}|j|dS)NrrzInvalid header name %rzlatin-1zInvalid header value %rs
	s: )rrrrr_is_legal_header_namer\r	enumeraterr_rX_is_illegal_header_valuer>r)r0rvaluesrZ	one_valuerrrrrs"





zHTTPConnection.putheader)rcCs*|jtkrt|_nt|j||ddS)N)r)rr_CS_REQ_SENTrr)r0rrrrr
endheaderss
zHTTPConnection.endheaderscCs|j|||||dS)N)
_send_request)r0rSrTrrCrrrrrszHTTPConnection.requestcCstdd|D}i}d|kr&d|d<d|kr6d|d<|j||f|d|krd	|krd
}|j||}|dkr|dk	r|jdkrtd|d
}|jddq|jdt|nd
}x |jD]\}	}
|j|	|
qWt|trt	|d}|j
||ddS)Ncss|]}|jVqdS)N)r+)rkrrr	<genexpr>sz/HTTPConnection._send_request.<locals>.<genexpr>rr*rzaccept-encodingrzcontent-lengthztransfer-encodingFrzUnable to determine size of %rTzTransfer-EncodingrNzContent-Lengthr)r)	frozensetrrrGrYrrXrrr'r)r0rSrTrrCrZheader_namesZskipsZcontent_lengthrlrrrrrs0	


zHTTPConnection._send_requestcCs|jr|jjrd|_|jtks&|jr0t|j|jdkrR|j|j|j|jd}n|j|j|jd}yLy|j	Wnt
k
r|jYnXt|_|j
r|jn||_|S|jYnXdS)Nr)rS)rrsrrrrGrrRrHrmConnectionErrorrnrrQ)r0rrrrgetresponses,


zHTTPConnection.getresponse)NN)NF)FF)N)!r4r5r6rrrr	HTTP_PORTrrrGstaticmethodrrr_GLOBAL_DEFAULT_TIMEOUTrUrrrrrrnrrrrrrrrrrrrrrrs: 
	'
6

.csBeZdZeZdddejdfdddfddZfddZZ	S)HTTPSConnectionN)contextcheck_hostnamecstt|j|||||dk	s.|dk	s.|dk	rDddl}	|	jdtd||_||_|dkr`tj	}|j
tjk}
|dkrz|j}|r|
rt
d|s|r|j||||_||_dS)NrzTkey_file, cert_file and check_hostname are deprecated, use a custom context instead.rVzMcheck_hostname needs a SSL context with either CERT_OPTIONAL or CERT_REQUIRED)rorrUwarningswarnDeprecationWarningkey_file	cert_filesslZ_create_default_https_contextZverify_modeZ	CERT_NONErr\Zload_cert_chain_context_check_hostname)r0rrrrrrrrrZwill_verify)rprrrUas(
zHTTPSConnection.__init__cstj|jr|j}n|j}|jj|j|d|_|jjr|jryt	j
|jj|Wn.tk
r|jj
tj|jjYnXdS)N)server_hostname)rorrrr	Zwrap_socketrRrr
rZmatch_hostnameZgetpeercert	ExceptionZshutdownrZ	SHUT_RDWRrn)r0r)rprrr|s



zHTTPSConnection.connect)
r4r5r6
HTTPS_PORTrrrrUrrrr)rprrZsrc@seZdZdS)rN)r4r5r6rrrrrsc@seZdZdS)rN)r4r5r6rrrrrsc@seZdZdS)rN)r4r5r6rrrrrsc@seZdZddZdS)rcCs|f|_||_dS)N)argsrK)r0rKrrrrUszUnknownProtocol.__init__N)r4r5r6rUrrrrrsc@seZdZdS)rN)r4r5r6rrrrrsc@seZdZdS)r	N)r4r5r6rrrrr	sc@s&eZdZdddZddZddZdS)	r
NcCs|f|_||_||_dS)N)rpartialexpected)r0rrrrrrUszIncompleteRead.__init__cCs2|jdk	rd|j}nd}d|jjt|j|fS)Nz, %i more expectedrWz%s(%i bytes read%s))rrpr4r,r)r0errr__repr__s

zIncompleteRead.__repr__cCst|S)N)rZ)r0rrr__str__szIncompleteRead.__str__)N)r4r5r6rUrrrrrrr
s
c@seZdZdS)rN)r4r5r6rrrrrsc@seZdZdS)r
N)r4r5r6rrrrr
sc@seZdZdS)rN)r4r5r6rrrrrsc@seZdZdS)rN)r4r5r6rrrrrsc@seZdZddZdS)rcCs|st|}|f|_||_dS)N)rZrr2)r0r2rrrrUszBadStatusLine.__init__N)r4r5r6rUrrrrrsc@seZdZddZdS)rcCstj|dt|fdS)Nz&got more than %d bytes when reading %s)rrUr<)r0Z	line_typerrrrUszLineTooLong.__init__N)r4r5r6rUrrrrrsc@seZdZddZdS)rcOs"tj|dtj|f||dS)NrW)rrUConnectionResetError)r0poskwrrrrUszRemoteDisconnected.__init__N)r4r5r6rUrrrrrs)r)?Zemail.parserr@Z
email.messagerrosrerrZurllib.parser__all__rr
rJrrrglobalsupdater__members__rrrr<r=compile	fullmatchrrrrrr'rZMessager(rDBufferedIOBaserrrImportErrorrr/rrrrrrr	r
rr
rrrrrrrrrrr<module>Gs


>;6