PK œqhYî¶J‚ßFßF)nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/ $#$#$#

Dir : /usr/libexec/kcare/python/kcarectl/__pycache__/
Server: Linux red.truehostdns.com 4.18.0-553.150.1.el8_10.x86_64 #1 SMP Fri Jul 31 15:23:31 EDT 2026 x86_64
IP: 51.161.15.103
Choose File :

Url:
Dir : //usr/libexec/kcare/python/kcarectl/__pycache__/platform_utils.cpython-36.pyc

3

0�j(�@sddlZddlZddlZddlZddlZddlZddlZddlmZm	Z	m
Z
mZmZm
Z
dZdZdd�Ze
jdd	��Zd
d�ZdQd
d�ZdZddd�ZdRdd�Zdd�Zdd�Zdd�Ze
jdd��Ze
jdd��Ze
jd d!��Zd"d#�Zd$d%�Zd&d'�Z d(d)�Z!d*d+�Z"d,d-�Z#d.d/�Z$d0d1�Z%d2efd3efd4e fd5e!fd6e"fd7e#fd8e$ffZ&d9d:�Z'd;d<�Z(d=d>�Z)e
j*e
j+d?�d@dA��Z,e
j*e
j+d?�dBdC��Z-e
je
j*e
j+d?�dDdE���Z.e
j*e
j+ddF�dGdH��Z/e
j*e
j+ddF�dIdJ��Z0e
j*e
j+d?�dKdL��Z1e
j*e
j+dSdF�dMdN��Z2dOdP�Z3dS)T�N�)�config�	constants�	log_utils�
process_utils�selinux�utilsz/usr/libexec/kcare/virt-whatz/proccCs2tjdd�dkrtj�Sddl}|jdd�SdS)N���rF)�full_distribution_name)r
r)�sys�version_info�platform�linux_distribution�distro)r�r�4/usr/libexec/kcare/python/kcarectl/platform_utils.py�
get_distrosrcCstj�dS)Nr	)r�unamerrrr�get_system_unamesrcCsdtjdtjdfS)Nz%s.%srr)r
rrrrr�get_python_version$srFc	Cs�t�tjd�}tj�r^tjddddttj	��gdd�\}}}|sN|j
�d}nd	|}||d
<|rltj|�St
|�}d}x |D]}|d|||f7}q~W|j�S)
N)�python_version�
agent_versionZpsz-Zz--no-headersz--pidT)�catch_stdoutrz	error: %s�selinux_context�z%s: %s
)rr�VERSIONrZis_selinux_enabledr�run_command�str�os�getpid�split�json�dumps�sorted�rstrip)	�is_json�info�rc�stdout�stderrrZ	info_keysZinfo_strZinfo_keyrrr�app_info(s
&

r,z/sys/firmware/efi/efivarsz$8be4df61-93ca-11d2-aa0d-00e098032b8cz$605dab50-e046-4300-abb6-3dd810dd8b23)�global�shim�c	CsFtjjtd||f�}tjj|�s&dSt|d��}|j|�SQRXdS)Nz%s-%s�rb)r �path�join�EFIVARS_PATH�exists�open�read)�name�vendorZ	max_bytesZvar_path�varrrr�_read_uefi_varIs
r:cCs@y&tdtd�}|r$|dd�dkSWntk
r:YnXdS)N�
SecureBootr-r�F���)r:�EFI_VENDORS�	Exception)Zsecure_boot_varrrr�is_secure_bootRsr@cCsZyt||�}|dkrdSWn.tk
rH}zt|�j�}WYdd}~XnXtjtj|��S)N)r:r?r�encoder�nstr�base64�urlsafe_b64encode)r7r8Zvalue_bytes�errr�_get_uefi_var_encoded]s
rFcCstjtjjtd��}|r0t|�dkr0|dd�}|tjjtjjt	��d�}|dsV|Sy�t
dd�dD��|d	<td
d�tjt	�D��}d|i|d
<t
ddddg�}x<|D]4}|dks�|jd�r�||kr�t|td
�|d
|<q�WWn2tk
�r}ztjt|��WYdd}~XnX|S)N�cmdlinei)rG�has_efirHcss |]}|t|td�fVqdS)r-N)rFr>)�.0r9rrr�	<genexpr>rsz#secure_boot_info.<locals>.<genexpr>r;�	SetupModer-cSs4g|],}|jtd�r|dttd�d��qS)r.rr)�endswithr>�len)rIr9rrr�
<listcomp>tsz$secure_boot_info.<locals>.<listcomp>�varsr.Z	MokListRTZ
MokListXRTZMokListTrustedRTZSbatLevelRT�	HSIStatus�MokIgnoreDBZRT)r;rK)rPrQ)r�try_to_readr r1r2�PROC_DIRrMr4�dirnamer3�dictr%�listdir�setrLrFr>r?r�logwarnr)rGr(Z	shim_varsZshim_exclude_varsr9�errrrr�secure_boot_infohs$
 rZcCsrtjrfy&tjtj�ddddtj�dd}Wqntjk
rb}ztj|�t	j
�}WYdd}~XqnXnt	j
�}|S)Nrr
)r�REPORT_FQDN�socket�getaddrinfo�gethostname�AI_CANONNAME�gaierrorr�logerrorr�node)�hostname�gerrr�get_hostname�s&
recCsTtjjtd�}tjj|�rPt|d�}|j�}ttt	|j
�d���}|j�|SdS)N�uptime�rrz-1)r r1r2rS�isfiler5�readliner�int�floatr"�close)Zuptime_file�f�line�resultrrr�
get_uptime�s
rpcCs tjjt�rtjtg�j�SdS)Nzno-virt-what)r r1rh�VIRTWHATr�check_output�striprrrr�get_virt�srtcCstjjd�S)Nz/usr/local/cpanel/cpanel)r r1rhrrrr�	is_cpanel�srucCstjjd�S)Nz/usr/local/psa/admin/)r r1�isdirrrrr�is_plesk�srwcCstjjd�S)Nz/usr/local/interworx/)r r1rvrrrr�is_interworx�srxcCstjjd�S)Nz/usr/local/ispmgr/)r r1rvrrrr�
is_ispmanager�srycCstjjd�S)Nz/usr/local/directadmin/plugins/)r r1rvrrrr�is_directadmin�srzcCstjjd�S)Nz/usr/local/hostingcontroller/)r r1rvrrrr�is_hosting_controller�sr{cCstjjd�S)Nz/hsphere/shared)r r1rvrrrr�
is_hsphere�sr|cCstdd�dD��S)z:Softaculous markers checked by the kcdoctor.sh detect_cp()css|]}tjj|�VqdS)N)r r1r4)rIr1rrrrJ�sz"has_softaculous.<locals>.<genexpr>�/usr/local/softaculous�*/usr/local/cpanel/whostmgr/cgi/softaculous�*/usr/local/directadmin/plugins/softaculous)r}r~r)�anyrrrr�has_softaculous�s
r�ZPleskZcPanelZ	InterWorxZ
ISPmanagerZDirectAdminzHosting ControllerzH-SpherecCs2tjjtjjtdd��o0tjjtjjtdd��S)NZvzZveinfo�version)r r1r4r2rSrrrr�inside_vz_container�sr�cCsdttjjtdd��j�kS)Nz/lxc/�1Zcgroup)r5r r1r2rSr6rrrr�inside_lxc_container�sr�cCstjjd�S)Nz/.dockerenv)r r1rhrrrr�inside_docker_container�sr�)�loggercCsFtjtjjtd��}|sdS|jdd�\}}}}t|�t|�t|�fS)N�loadavg� r
)rrRr r1r2rSr"rk)r��m1Zm5Zm15�_rrr�get_load_average�s
r�csDtjtjjtd��}|sdSd
�t�fdd�d	d�|j�D�D��S)z!Returns dict of memory info in kB�meminfoN�MemTotal�MemFree�	SwapTotal�SwapFreec3s&|]\}}|�kr|t|�fVqdS)N)rj)rI�k�v)�
filter_paramsrrrJszget_mem_info.<locals>.<genexpr>css"|]}tjd|�dd�VqdS)z[\s:]+Nr	)�rer")rIrnrrrrJs)r�r�r�r�)rrRr r1r2rSrU�
splitlines)r�r)r�r�get_mem_info�s
r�cCs�tjtjjtd��}|sdSdd�|jd�D�}t|�ttdd�|D���|dj	d�t
|dj	d	d��|dj	d
�t
|dj	dd��t
|dj	dd��|dj	d
�|dj	dd�j�d�	S)N�cpuinfocSs&g|]}|rtdd�|j�D���qS)css|]}tjd|�VqdS)z\s*:\s*N)r�r")rIrnrrrrJsz*get_cpu_info.<locals>.<listcomp>.<genexpr>)rUr�)rIZ	cpu_linesrrrrNsz get_cpu_info.<locals>.<listcomp>z

css"|]}|jd�|jd�fVqdS)zphysical idzcore idN)�get)rIZcpurrrrJszget_cpu_info.<locals>.<genexpr>r�	vendor_id�modelz
model namez
cpu family�stepping�	microcode�flagsr)	Z
logical_coresZphysical_coresr�r�Z
model_nameZ
cpu_familyr�r�r�)rrRr r1r2rSr"rMrWr�rj)r�Zcpusrrr�get_cpu_infosr�)r��default_returncCstdd�tjt�D��S)NcSsg|]}|j�r|�qSr)�isdigit)rI�drrrrN sz%get_process_count.<locals>.<listcomp>)rMr rVrSrrrr�get_process_countsr�cCs(tjtjjtd��}t|pdj�d�S)Nzsys/fs/file-nr�0r)rrRr r1r2rSrjr")Zfd_inforrr�get_opened_files_count#sr�cCs$xtjd�D]\}}}t|�SWdS)Nz/sys/kernel/debug/kvm)r �walkrM)Z_root�dirs�_filesrrr�get_vm_count_kvm*s
r�cCs(dd�}|d�|d�|d�|d�fS)z8Return tuple of total numbers of TCP and UDP connectionscSs4tjtjjtd|��}|sdStt|j��dd�S)N�netrr)	rrRr r1r2rS�maxrMr�)�proto�recordsrrr�conn_records_count7sz9get_network_connections_count.<locals>.conn_records_countZtcpZtcp6ZudpZudp6r)r�rrr�get_network_connections_count2sr�c	Cs,t�\}}t�t�t�t�t�t�||d�S)N)Zload_averageZmem_infoZcpu_infoZvm_countZ	processesZ
open_filesZtcp_connectionsZudp_connections)r�r�r�r�r�r�r�)Zconn_tcpZconn_udprrr�get_performance_metricsAs
r�)F)r/)rr)4rCr#r rr�r\r
rrrrrrrrqrSr�cachedrrr,r3r>r:r@rFrZrerprtrurwrxryrzr{r|r�ZCONTROL_PANEL_PROBESr�r�r��catch_errorsrXr�r�r�r�r�r�r�r�rrrr�<module>sd