HEX
Server: LiteSpeed
System: Linux sys19.prosuperservers.com 5.14.0-611.49.2.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Apr 30 09:05:08 EDT 2026 x86_64
User: inloveandmercy (1563)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //lib/python3.9/site-packages/up2date_client/__pycache__/rpcServer.cpython-39.pyc
a

7
f�+�@s`ddlZddlZddlZddlZddlmZddlmZddlmZddlmZddlm	Z	ddl
mZddl
mZdd	l
mZz$ddlZddlZddlZddlZWnBey�ddlmZddlmZddlmZddlmZYn0ddlZejd
dd�Zeed
��seje_ejZ dd�Z!Gdd�dej"�Z#Gdd�d�Z$ddd�Z%ddd�Z&dd�Z'dS)�N)�config)�
clientCaps)�
up2dateLog)�
up2dateErrors)�up2dateUtils)�SSL)�rpclib)�
raise_with_tbzrhn-client-toolsT)�fallback�ugettextcCst|�dS�N)�print)�msg�r�</usr/lib/python3.9/site-packages/up2date_client/rpcServer.py�stdoutMsgCallback$src@s$eZdZdd�Zdd�Zdd�ZdS)�RetryServercCs
||_dSr)�
serverList)�selfrrrr�
addServerList)szRetryServer.addServerListcCs|t��|_z|�||�}W�qxtjy4�Y�qxtjyJ�Y�qxtj	y~|j�
d�ttd��t
�d�Yn�|j��}|dkr�|j���d|j}|dt
��dt
��df}|d|j��}|j�
|�t�|j���}|d}|d|_|d|_|��}|d	v�r:tt�d
|��|j|_||_|j��|_|j�sbd|_d|_Yq
Yn0�qxq
|S)Nz,Error: Server Unavailable. Please try later.���z!An error occurred talking to %s:
z%s
%s
r�zTrying the next serverURL: %s
�)�http�httpsz%Redirected to unsupported protocol %sz/RPC2)r�initLog�logZ_requestrZInvalidRedirectionError�	xmlrpclibZFault�httplibZ
BadStatusLine�log_mer�_�sys�exitr�next�resetServerIndexZ_host�exc_info�server�urlparse�urlsplitZ_handler�lowerr	Z
_orig_handlerZ_typeZ_uriZ_allow_redirect)rZ
methodname�params�retr&rZ	parse_res�typrrr�	_request1,sP
�


 


�
zRetryServer._request1cCstj�|j|�Sr)rrZ_Methodr-)r�namerrr�__getattr__^szRetryServer.__getattr__N)�__name__�
__module__�__qualname__rr-r/rrrrr(s2rc@s0eZdZgfdd�Zdd�Zdd�Zdd�Zd	S)
�
ServerListcCs||_d|_dS�Nr)r�index)rZ
serverlistrrr�__init__eszServerList.__init__cCs|j|j|_|jSr)rr5Z	serverurl�rrrrr&iszServerList.servercCs(|jd|_|jt|j�kr dS|��S)Nr)r5�lenrr&r7rrrr#nszServerList.nextcCs
d|_dSr4)r5r7rrrr$tszServerList.resetServerIndexN)r0r1r2r6r&r#r$rrrrr3dsr3cCsFt��}|dur:|d}|dus0t|���dkr4d}|g}t|||�S)NZclnServerURLrz&http://cln.cloudlinux.com/clweb/xmlrpc)r�initUp2dateConfigr8�strip�	getServer)�refreshCallback�serverOverride�timeout�cfgrrr�getCLNServerwsr@cCs�t��}t��}|d}t|t�s(|g}|p0dg}|drDt��}nd}|sVt��}n|}t|�}	d}
d}|dr�|dp|d}
|dp�d}d}dD]@}
|
t	j
vr�t	j
|
s�q�t	j
|
�d�d	}|�d
�d	}q�q�t|	�
�|||
||d�}|�|	�|�dt���|�r|�|�d
d�|jjD�}|�r||D]H}t	�|t	j��sndtd�|f}|�d|�t�|��|�|��q2t��tj��}|D]\}}|�||��q�|S)NZ	sslCACertz'/usr/share/rhn/CLN-ORG-TRUSTED-SSL-CERTZenableProxyZenableProxyAuth�	proxyUser�
proxyPassword)�LANGUAGE�LC_ALL�LC_MESSAGES�LANG�:r�.)r<�proxy�username�passwordr>zX-Up2date-VersioncSs"g|]}t�|�ddkrd�qS)rrT)r')�.0�irrr�
<listcomp>�s�zgetServer.<locals>.<listcomp>z%s: %sz ERROR: can not find RHNS CA filez%s)rrrr9�
isinstance�listZgetProxySettingZ
getServerlURLr3�os�environ�splitrr&rZ
add_headerr�versionZsetlangr�access�R_OKr rrZSSLCertificateFileNotFoundZadd_trusted_certrZ
loadLocalCapsZcapsZheaderFormat)r<r=r>rr?�caZ
rhns_ca_certsZ	proxyHostZ
serverUrlsrrArB�lang�env�sZneed_caZrhns_ca_certrZ
headerlistZ
headerName�valuerrrr;�sh





�

�

r;c	Os�t��}|�d|jd�t��}d}d}zt|d�}WntyRd}Yn0|dkr`d}d}d}z||i|��}W�n�ty�t	t
�td���Y�n�t
jtjf�y.|�dt��d|f�||k�r$t��d}	t|	j�dk�rt	t
�|	jd��nt	t
�|	jd��nd}Y�n:tj�yZtd�t	t
�d��Y�ntj�y�t��d}	d	}
|
d
|	j}
|
d|	j}
|
d|	j}
|�|
�t	t
�|
��Y�n�tj�yDt��d}	|�d
|	j |f�|	j!dk�r|�d|	j"�|�d�t#�$|	j%�\}}d}
t&|�dk�r\|�d|�ddl'm(}|�)�t&|�dk�r�|�td��t	t
�|	j ��t&|�dk�rt*|d�t*g�k�r�|d}n|d}t*|�t*g�k�r�d|d|d|d|df}n|}d||f}
|�|
�t	t
�+|
��|
�s@||k�r<t	t
�|	j ��nd}Yn$tj,�yft	t
�d��Yn0|dk�rx�q�nd}|�r�t-�.d�|d}||kr`t
�d��q`|S)NzrpcServer: Calling XMLRPC %sZ
_Method__namerZnetworkRetriesrzConnection aborted by the userz(A socket error occurred: %s, attempt #%szhttplib.IncompleteReadz
An HTTP error occurred:
zURL: %s
zStatus Code: %s
zError Message: %s
z,A protocol error occurred: %s , attempt #%s,i�zCould not find URL, %sz)Check server name and/or URL, then retry
�"z'Auth token timeout occurred
 errmsg: %s)�up2dateAuth�3z.Server has refused connection due to high load�z%s-%s-%s.%sr�zFile Not Found: %s
%sz Broken response from the server.�z0The data returned from the server was incomplete)/rrZ	log_debug�__dict__rr9�int�
ValueError�KeyboardInterruptr	rZCommunicationErrorr �socket�errorrZsocket_errorrr!r%r8�argsrZIncompleteReadr
�urllib2Z	HTTPError�filename�coderrZ
ProtocolError�errmsgZerrcode�urlrZreportErrorZheaders�abs�up2date_clientr]ZupdateLoginInfo�type�FileNotFoundErrorZ
ResponseError�time�sleep)�methodrh�kwargsrr?r+Z
attempt_countZattemptsZfailure�erZerrCodeZerrMsg�resetr]�pkgZpkgNamerrr�doCall�s�
��


�

"

�

ry)NNN)NNN)(rQr!rfrrrorrrrrZrhnrrZrhn.tbr	rrir'r�ImportErrorZhttp.clientZclientZurllib.requestZrequest�urllib.parse�parseZ
xmlrpc.client�gettext�translation�t�hasattrrr rZServerrr3r@r;ryrrrr�<module>s@<
	
L