HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/http/__pycache__/client.cpython-310.opt-2.pyc
o

�i���@sN	ddlZddlZddlZddlZddlZddlZddlZddlZddl	Z
ddlmZgd�Z
dZdZdZdZdZd	Ze��ejj�d
d�ejj��D�ZdZd
Ze�d�jZe�d�jZ e�d�Z!e�d�Z"hd�Z#d>dd�Z$Gdd�dej%j&�Z'dd�Z(e'fdd�Z)Gdd�dej*�Z+Gdd�d�Z,zddl-Z-Wn	e.y�YnwGd d!�d!e,�Z/e
�0d!�Gd"d#�d#e1�Z2Gd$d%�d%e2�Z3Gd&d'�d'e2�Z4Gd(d)�d)e2�Z5Gd*d+�d+e2�Z6Gd,d-�d-e2�Z7Gd.d/�d/e2�Z8Gd0d1�d1e2�Z9Gd2d3�d3e9�Z:Gd4d5�d5e9�Z;Gd6d7�d7e9�Z<Gd8d9�d9e2�Z=Gd:d;�d;e2�Z>Gd<d=�d=e?e=�Z@e2ZAdS)?�N)�urlsplit)�HTTPResponse�HTTPConnection�
HTTPException�NotConnected�UnknownProtocol�UnknownTransferEncoding�UnimplementedFileMode�IncompleteRead�
InvalidURL�ImproperConnectionState�CannotSendRequest�CannotSendHeader�ResponseNotReady�
BadStatusLine�LineTooLong�RemoteDisconnected�error�	responses�Pi�ZUNKNOWNZIdlezRequest-startedzRequest-sentcCsi|]}||j�qS�)�phrase)�.0�vrr�(/usr/local/lib/python3.10/http/client.py�
<dictcomp>lsri�ds[^:\s][^:\r\n]*s\n(?![ \t])|\r(?![ \t\n])z[- ]z[-]>�PUTZPATCHZPOST�datac
Cs\	z|�d�WSty-}zt|j|j|j|jd|��||j|j�|f�d�d}~ww)N�latin-1z`%s (%.20r) is not valid Latin-1. Use %s.encode('utf-8') if you want to send it encoded in UTF-8.)�encode�UnicodeEncodeError�encoding�object�start�end�title)r�name�errrrr�_encode�s"�����r)c@�eZdZdd�ZdS)�HTTPMessagecCsl	|��d}t|�}g}d}|��D] }|d|���|kr"d}n
|dd���s,d}|r3|�|�q|S)N�:r�)�lower�len�keys�isspace�append)�selfr'�nZlstZhit�linerrr�getallmatchingheaders�s	
�z!HTTPMessage.getallmatchingheadersN)�__name__�
__module__�__qualname__r6rrrrr+�sr+cCs\	g}	|�td�}t|�tkrtd��|�|�t|�tkr&tdt��|dvr-	|Sq)NTr-�header linezgot more than %d headers��
�
�)�readline�_MAXLINEr/rr2�_MAXHEADERSr)�fp�headersr5rrr�
_read_headers�s
�rDcCs.	t|�}d�|��d�}tjj|d��|�S)Nr>�
iso-8859-1)�_class)rD�join�decode�email�parserZParserZparsestr)rBrFrCZhstringrrr�
parse_headers�s	rKcseZdZd@dd�Zdd�Zdd�Zd	d
�Zdd�Z�fd
d�Z�fdd�Z	dd�Z
dd�ZdAdd�Zdd�Z
dd�Zdd�Zdd�ZdAdd �Zd!d"�Zd#d$�Zd%d&�ZdBd(d)�ZdBd*d+�ZdB�fd,d-�	Zd.d/�Zd0d1�Zd2d3�ZdAd4d5�Zd6d7�Zd8d9�Zd:d;�Zd<d=�Zd>d?�Z �Z!S)CrrNcCsR|�d�|_||_||_d|_|_t|_t|_t|_	t|_
t|_t|_t|_
dS)N�rb)�makefilerB�
debuglevel�_methodrC�msg�_UNKNOWN�version�status�reason�chunked�
chunk_left�length�
will_close)r3�sockrN�method�urlrrr�__init__�s
zHTTPResponse.__init__cCst|j�td�d�}t|�tkrtd��|jdkr!tdt|��|s't	d��z|�
dd�\}}}Wn!tySz|�
dd�\}}d}WntyPd}YnwYnw|�d	�sa|�
�t|��zt|�}|d
ksn|dkrrt|��Wnty~t|��w|||fS)Nr-rEzstatus linerzreply:z-Remote end closed connection without response��zHTTP/ri�)�strrBr?r@r/rrN�print�reprr�split�
ValueError�
startswith�_close_connr�int)r3r5rRrSrTrrr�_read_statuss<
���
��
zHTTPResponse._read_statusc	Cs�|jdurdS	|��\}}}|tkrnt|j�}|jdkr#td|�~q||_|_|�	�|_
|dvr8d|_n
|�d�rAd|_nt
|��t|j�|_|_|jdkre|j��D]\}}td|d	|�qX|j�d
�}|rz|��dkrzd|_d|_nd|_|��|_d|_|j�d
�}|r�|js�zt|�|_Wnty�d|_Yn
w|jdkr�d|_nd|_|tks�|tks�d|kr�dks�n|jdkr�d|_|js�|js�|jdur�d|_dSdSdSdS)NTrzheaders:)zHTTP/1.0zHTTP/0.9�
zHTTP/1.��header:r,�transfer-encodingrUF�content-lengthr���HEAD)rCrgZCONTINUErDrBrNr`�coderS�striprTrRrdrrKrP�items�getr.rUrV�_check_closerXrWrfrcZ
NO_CONTENTZNOT_MODIFIEDrO)	r3rRrSrTZskipped_headers�hdr�valZtr_encrWrrr�begin7sf



�






�
�
�

�zHTTPResponse.begincCsv|j�d�}|jdkr|rd|��vrdSdS|j�d�rdS|r)d|��vr)dS|j�d�}|r9d|��vr9dSdS)N�
connectionri�closeTFz
keep-alivezproxy-connection)rCrrrRr.)r3�connZpconnrrrrss
zHTTPResponse._check_closecCs|j}d|_|��dS�N)rBrx)r3rBrrrre�szHTTPResponse._close_conncs6zt���W|jr|��dSdS|jr|��wwrz)�superrxrBre�r3��	__class__rrrx�s
�
�zHTTPResponse.closecs"t���|jr|j��dSdSrz)r{�flushrBr|r}rrr�s
�zHTTPResponse.flushcCs	dS)NTrr|rrr�readable�szHTTPResponse.readablecCs	|jduSrz)rBr|rrr�isclosed�s
zHTTPResponse.isclosedcCs�	|jdurdS|jdkr|��dS|jr|�|�S|durS|jdur,||jkr,|j}|j�|�}|s<|r<|��|S|jdurQ|jt|�8_|jsQ|��|S|jdur^|j��}nz|�|j�}Wnt	yr|���wd|_|��|S)Nr>rnr)
rBrOrerU�
_read_chunkedrW�readr/�
_safe_readr
)r3�amt�srrrr��s>



�
�zHTTPResponse.readcCs�	|jdurdS|jdkr|��dS|jr|�|�S|jdur0t|�|jkr0t|�d|j�}|j�|�}|s@|r@|��|S|jdurS|j|8_|jsS|��|S)Nrrn)	rBrOrerU�_readinto_chunkedrWr/�
memoryview�readinto)r3�br4rrrr��s(




�zHTTPResponse.readintocCsh|j�td�}t|�tkrtd��|�d�}|dkr!|d|�}zt|d�WSty3|���w)Nr-z
chunk size�;r�)	rBr?r@r/r�findrfrcre)r3r5�irrr�_read_next_chunk_sizes
�z"HTTPResponse._read_next_chunk_sizecCs<	|j�td�}t|�tkrtd��|sdS|dvrdSq)NTr-ztrailer liner;)rBr?r@r/r�r3r5rrr�_read_and_discard_trailers�z&HTTPResponse._read_and_discard_trailercCsf|j}|s1|dur|�d�z|��}Wntytd��w|dkr.|��|��d}||_|S)Nr]r>r)rVr�r�rcr
r�re)r3rVrrr�_get_chunk_left*s
�zHTTPResponse._get_chunk_leftcCs�g}z:	|��}|dur
n*|dur#||kr#|�|�|��|||_n|�|�|��|dur3||8}d|_qd�|�WStyJtd�|���w)NTrr>)r�r2r�rVrGr
)r3r��valuerVrrrr�Bs&
��zHTTPResponse._read_chunkedcCs�d}t|�}z:	|��}|dur|WSt|�|kr(|�|�}|||_||WS|d|�}|�|�}||d�}||7}d|_qtyQtt|d|����w)Nr)r�r�r/�_safe_readintorVr
�bytes)r3r�Ztotal_bytesZmvbrVr4Ztemp_mvbrrrr�Xs(



��zHTTPResponse._readinto_chunkedcCs0	|j�|�}t|�|krt||t|���|Srz)rBr�r/r
)r3r�rrrrr�ps
zHTTPResponse._safe_readcCs<	t|�}|j�|�}||krtt|d|��||��|Srz)r/rBr�r
r�)r3r�r�r4rrrr�|szHTTPResponse._safe_readinto���cCs�	|jdus|jdkr
dS|jr|�|�S|jdur&|dks#||jkr&|j}|j�|�}|s6|r6|��|S|jdurD|jt|�8_|S�Nrnr>r)rBrOrU�_read1_chunkedrW�read1rer/)r3r4�resultrrrr��s

�zHTTPResponse.read1cCs4|jdus
|jdkrdS|jr|�|�S|j�|�S)Nrnr>)rBrOrU�
_peek_chunked�peek)r3r4rrrr��s

zHTTPResponse.peekcs�|jdus
|jdkrdS|jrt��|�S|jdur&|dks#||jkr&|j}|j�|�}|s6|r6|��|S|jdurD|jt|�8_|Sr�)rBrOrUr{r?rWrer/)r3�limitr�r}rrr?�s
�zHTTPResponse.readlinecCsd|��}|dus|dkrdSd|kr|ksn|}|j�|�}|jt|�8_|s0td��|S)Nrr>)r�rBr�rVr/r
)r3r4rVr�rrrr��szHTTPResponse._read1_chunkedcCsBz|��}Wn
tyYdSw|durdS|j�|�d|�S)Nr>)r�r
rBr�)r3r4rVrrrr��s�zHTTPResponse._peek_chunkedcCs
|j��Srz)rB�filenor|rrrr���
zHTTPResponse.filenocCsD	|jdur	t��|j�|�p|}t|t�st|d�s|Sd�|�S)N�__iter__z, )rCrZget_all�
isinstancer_�hasattrrG)r3r'�defaultrCrrr�	getheader�s

zHTTPResponse.getheadercCs 	|jdur	t��t|j���Srz)rCr�listrqr|rrr�
getheaders�s
zHTTPResponse.getheaderscCs|Srzrr|rrrr��szHTTPResponse.__iter__cC�	|jSrz)rCr|rrr�info�szHTTPResponse.infocCr�rz)r[r|rrr�geturls	zHTTPResponse.geturlcCr�rz)rSr|rrr�getcodeszHTTPResponse.getcode)rNNrz)r�)"r7r8r9r\rgrvrsrerxrr�r�r�r�r�r�r�r�r�r�r�r�r�r?r�r�r�r�r�r�r�r�r��
__classcell__rrr}rr�s>
	!H

("


	
rc@seZdZdZdZeZeZdZ	dZ
edd��Zedd��Z
d	ejd	d
fdd�Zd7d
d�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd8d d!�Z		d9d"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Z d:dd.�d/d0�Z!d	ifdd.�d1d2�Z"d3d4�Z#d5d6�Z$d	S);rrizHTTP/1.1r-rcCs	t|tj�Srz)r��io�
TextIOBase)�streamrrr�
_is_textIO szHTTPConnection._is_textIOcCsf	|dur|��tvr
dSdSt|d�rdSzt|�}|jWSty'Ynwt|t�r1t|�SdS)Nrr�)	�upper�_METHODS_EXPECTING_BODYr�r��nbytes�	TypeErrorr�r_r/)�bodyrZ�mvrrr�_get_content_length&s 
�
z"HTTPConnection._get_content_lengthN� cCsn||_||_||_d|_g|_d|_t|_d|_d|_	d|_
i|_|�||�\|_
|_|�|j
�tj|_dSrz)�timeout�source_address�	blocksizerY�_buffer�_HTTPConnection__response�_CS_IDLE�_HTTPConnection__staterO�_tunnel_host�_tunnel_port�_tunnel_headers�
_get_hostport�host�port�_validate_host�socket�create_connection�_create_connection)r3r�r�r�r�r�rrrr\FszHTTPConnection.__init__cCs@	|jrtd��|�||�\|_|_|r||_dS|j��dS)Nz.Can't set up tunnel for established connection)rY�RuntimeErrorr�r�r�r��clear)r3r�r�rCrrr�
set_tunnel\s
zHTTPConnection.set_tunnelcCs�|dur`|�d�}|�d�}||krIzt||dd��}Wn#tyA||dd�dkr3|j}ntd||dd���Ynw|d|�}n|j}|r`|ddkr`|ddkr`|dd�}||fS)	Nr,�]r-r^znonnumeric port: '%s'r�[r�)�rfindrfrc�default_portr)r3r�r�r��jrrrr�ts"

��zHTTPConnection._get_hostportcCs
||_dSrz)rN)r3�levelrrr�set_debuglevel�r�zHTTPConnection.set_debuglevelc
Csd|j�d�|jf}|g}|j��D]\}}|�|�d|�d��d��q|�d�|�d�|��~|j|j	|j
d�}|��\}}}|tj
jkrZ|��td	|�d
|������	|j�td�}	t|	�tkrmtd
��|	sqdS|	dvrwdS|jdkr�td|	���q[)NsCONNECT %s:%d HTTP/1.0
�asciiz: �
rr<r>�rZzTunnel connection failed: � Tr-r:r;rrj)r�r r�r�rqr2�sendrG�response_classrYrOrg�http�
HTTPStatusZOKrx�OSErrorrprBr?r@r/rrNr`rH)
r3�connectrC�headerr��responserRro�messager5rrr�_tunnel�s2�

�zHTTPConnection._tunnelc
Cs�	t�d||j|j�|�|j|jf|j|j�|_z|j�t	j
t	jd�Wnty>}z
|j
t
jkr4�WYd}~nd}~ww|jrH|��dSdS)Nzhttp.client.connectr-)�sys�auditr�r�r�r�r�rY�
setsockoptr��IPPROTO_TCP�TCP_NODELAYr��errnoZENOPROTOOPTr�r��r3�errrr��s �����zHTTPConnection.connectcCs`	t|_z|j}|rd|_|��W|j}|r d|_|��dSdS|j}|r/d|_|��wwrz)r�r�rYrxr�)r3rYr�rrrrx�s$���
�zHTTPConnection.closecCs"	|jdur|jr|��nt��|jdkrtdt|��t|d�r\|jdkr+td�|�|�}|r;|jdkr;td�	|�	|j
�}|sG	dS|rN|�d�}t�
d||�|j�|�q<t�
d||�z	|j�|�WdSty�t|tjj�r�|D]}|j�|�q|YdStd	t|���w)
Nrzsend:r��sendIng a read()able�encoding file using iso-8859-1r-rEzhttp.client.sendz9data should be a bytes-like object or an iterable, got %r)rY�	auto_openr�rrNr`rar�r�r�r�r r�r��sendallr�r��collections�abc�Iterable�type)r3rr �	datablock�drrrr��sF





�
�	���zHTTPConnection.sendcCs	|j�|�dSrz)r�r2)r3r�rrr�_output�szHTTPConnection._outputccs`�|jdkr
td�|�|�}|r|jdkrtd�	|�|j�}|s%dS|r,|�d�}|Vq)Nrr�r�TrE)rNr`r�r�r�r )r3r�r r�rrr�_read_readable�s�


�zHTTPConnection._read_readableFcCs 	|j�d�d�|j�}|jdd�=|�|�|dur�t|d�r'|�|�}n)zt|�WntyLzt|�}WntyItdt	|���wYnw|f}|D])}|s`|j
dkr_td�qR|rv|jdkrvt
|�d�d	��d
�|d}|�|�qR|r�|jdkr�|�d�dSdSdSdS)N)r>r>r<r�zAmessage_body should be a bytes-like object or an iterable, got %rrzZero length chunk ignoredri�Xr�r�s0

)r��extendrGr�r�r�r�r��iterr�rNr`�	_http_vsnr/r )r3�message_body�encode_chunkedrP�chunks�chunkrrr�_send_outputsF

����

��'zHTTPConnection._send_outputcCs�	|jr|j��rd|_|jtkrt|_nt|j��|�|�||_|p%d}|�|�d|||j	f}|�
|�|��|jdkr�|s�d}|�
d�rRt|�\}}}}}|rqz|�d�}Wntyi|�d�}Ynw|�d|�nN|jr{|j}	|j}
n|j}	|j}
z|	�d�}Wnty�|	�d�}Ynw|	�d	�d
kr�d|d}|
|jkr�|�d|�n|�d�}|�dd
||
f�|s�|�dd�dSdS	dS)N�/z%s %s %srir^r�r�ZidnaZHostr,r�[�]z%s:%szAccept-Encoding�identity)r�r�r�r��_CS_REQ_STARTEDr
�_validate_methodrO�_validate_path�
_http_vsn_strr��_encode_requestr�rdrr r!�	putheaderr�r�r�r�r�r�rH)r3rZr[�	skip_host�skip_accept_encoding�request�netloc�nilZ
netloc_encr�r�Zhost_encrrr�
putrequest;sX






��


�
zHTTPConnection.putrequestcCs
|�d�S)Nr�)r )r3r
rrrr�s
zHTTPConnection._encode_requestcC�.	t�|�}|rtd|�d|���d���dS)Nz)method can't contain control characters. � (found at least �))�$_contains_disallowed_method_pchar_re�searchrc�group)r3rZ�matchrrrr�s
���zHTTPConnection._validate_methodcCr�Nz&URL can't contain control characters. rr��!_contains_disallowed_url_pchar_rerrr)r3r[rrrrr��


��zHTTPConnection._validate_pathcCrrr)r3r�rrrrr��rzHTTPConnection._validate_hostcGs�	|jtkr	t��t|d�r|�d�}t|�std|f��t|�}t|�D].\}}t|d�r7|�d�||<nt	|t
�rEt|��d�||<t||�rTtd||f��q&d�
|�}|d|}|�|�dS)Nr r�zInvalid header name %rrzInvalid header value %rs
	s: )r�rrr�r �_is_legal_header_namercr��	enumerater�rfr_�_is_illegal_header_valuerGr�)r3r��valuesr�Z	one_valuer�rrrr�s&




�
zHTTPConnection.putheader�r�cCs,	|jtkr
t|_nt��|j||d�dS)Nr)r�r�_CS_REQ_SENTrr�)r3r�r�rrr�
endheaders�s

zHTTPConnection.endheaderscCs	|�|||||�dSrz)�
_send_request)r3rZr[r�rCr�rrrr
szHTTPConnection.requestcCs�tdd�|D��}i}d|vrd|d<d|vrd|d<|j||fi|��d|vrZd	|vrYd
}|�||�}|durQ|durP|jdkrHtd|�d
}|�dd�n|�dt|��nd
}|��D]
\}	}
|�|	|
�q`t|t�rut	|d�}|j
||d�dS)Ncss�|]}|��VqdSrz)r.)r�krrr�	<genexpr>s�z/HTTPConnection._send_request.<locals>.<genexpr>r�r-rzaccept-encodingr	rlrkFrzUnable to determine size of %rTzTransfer-EncodingrUzContent-Lengthr�r)�	frozensetr
r�rNr`rr_rqr�r)r)r3rZr[r�rCr�Zheader_namesZskipsZcontent_lengthrtr�rrrr s4	
��

zHTTPConnection._send_requestcCs�	|jr|j��rd|_|jtks|jrt|j��|jdkr*|j|j|j|jd�}n	|j|j|jd�}z&z|�	�Wnt
yF|���wt|_|j
rT|��|WS||_|WS|���)Nrr�)r�r�r�rrrNr�rYrOrv�ConnectionErrorrxr�rX)r3r�rrr�getresponse3s4

���zHTTPConnection.getresponse)NN)NF)FFrz)%r7r8r9r�rrr��	HTTP_PORTr�r�rN�staticmethodr�r�r��_GLOBAL_DEFAULT_TIMEOUTr\r�r�r�r�r�rxr�r�r�r�r
rrrr�rrr
r r%rrrrrsL


�
 (
6
�	
�.rcsFeZdZ	eZdddejdfdddd��fdd�Z�fdd�Z�Z	S)�HTTPSConnectionNr�)�context�check_hostnamer�cs�tt|�j|||||	d�|dus|dus|dur$ddl}
|
�dtd�||_||_|durEt�	�}|j
dkr=|�dg�|jdurEd|_|j
tjk}|durR|j}|rZ|sZtd��|s^|rl|�||�|jdurld|_||_|dury||j_dSdS)	N)r�rzTkey_file, cert_file and check_hostname are deprecated, use a custom context instead.r]rizhttp/1.1TzMcheck_hostname needs a SSL context with either CERT_OPTIONAL or CERT_REQUIRED)r{r)r\�warnings�warn�DeprecationWarning�key_file�	cert_file�sslZ_create_default_https_contextr�Zset_alpn_protocolsZpost_handshake_authZverify_modeZ	CERT_NONEr+rcZload_cert_chain�_context)r3r�r�r/r0r�r�r*r+r�r,Zwill_verifyr}rrr\~s>��


�zHTTPSConnection.__init__cs8	t���|jr
|j}n|j}|jj|j|d�|_dS)N)�server_hostname)r{r�r�r�r2Zwrap_socketrY)r3r3r}rrr��s

�zHTTPSConnection.connect)
r7r8r9�
HTTPS_PORTr�r�r(r\r�r�rrr}rr)ws��'r)c@�eZdZdS)rN�r7r8r9rrrrr�src@r5)rNr6rrrrr��rc@r5)rNr6rrrrr�r7rc@r*)rcCs|f|_||_dSrz)�argsrR)r3rRrrrr\�s
zUnknownProtocol.__init__N�r7r8r9r\rrrrr��rc@r5)rNr6rrrrr�r7rc@r5)r	Nr6rrrrr	�r7r	c@s$eZdZddd�Zdd�ZejZdS)r
NcCs|f|_||_||_dSrz)r8�partial�expected)r3r;r<rrrr\�s
zIncompleteRead.__init__cCs2|jdurd|j}nd}d|jjt|j�|fS)Nz, %i more expectedr^z%s(%i bytes read%s))r<r~r7r/r;r�rrr�__repr__�s

�zIncompleteRead.__repr__rz)r7r8r9r\r=r#�__str__rrrrr
�s

r
c@r5)rNr6rrrrr�r7rc@r5)r
Nr6rrrrr
�r7r
c@r5)rNr6rrrrr�r7rc@r5)rNr6rrrrr�r7rc@r*)rcCs|st|�}|f|_||_dSrz)rar8r5r�rrrr\�s
zBadStatusLine.__init__Nr9rrrrr�r:rc@r*)rcCst�|dt|f�dS)Nz&got more than %d bytes when reading %s)rr\r@)r3Z	line_typerrrr\�s
�zLineTooLong.__init__Nr9rrrrr�r:rc@r*)rcOs(t�|d�tj|g|�Ri|��dS)Nr^)rr\�ConnectionResetError)r3�pos�kwrrrr\�szRemoteDisconnected.__init__Nr9rrrrr�r:r)r)BZemail.parserrIZ
email.messager�r�r��rer�r��collections.abcr��urllib.parser�__all__r&r4rQr�rr�globals�updater��__members__rrr@rA�compile�	fullmatchrrrrrr�r)r�ZMessager+rDrK�BufferedIOBaserrr1�ImportErrorr)r2�	Exceptionrrrrrr	r
rr
rrrrr?rrrrrr�<module>s~F


+`�
;