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: //opt/osm/venv/lib64/python3.10/site-packages/psutil/__pycache__/_psaix.cpython-310.pyc
o

=iG�@s�dZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddl	mZddl	mZ
ddl
mZdd	l
mZdd
l
mZddl
mZddl
mZdd
l
mZddl
mZddl
mZddl
mZddl
mZdgZee
d�Zee
d�Zee
d�Ze
��Ze
jZe
j e
j!e
j"e
j#e
j$e
j%e
j&e
j%e
j'e
j(iZ)e
j*e
j+e
j,e
j-e
j.e
j/e
j0e
j1e
j2e
j3e
j4e
j5e
j6e
j7e
j8e
j9e
j:e
j;e
j<e
j=e
j>e
j?e
j@e
jAiZBeCddddddddd�ZDedddg�ZEeEZFed gd!��ZGed"gd#��ZHd$d%�ZId&d'�ZJd(d)�ZKd*d+�ZLd,d-�ZMd.d/�ZNd0d1�ZOe
jPZPejQZQdFd3d4�ZRe
jSZSe�r"e
jTZTdGd6d7�ZUd8d9�ZVd:d;�ZWd<d=�ZXd>d?�ZYd@dA�ZZdBdC�Z[GdDdE�dE�Z\dS)HzAIX platform implementation.�N)�
namedtuple�)�_common)�_psposix)�_psutil_aix)�NIC_DUPLEX_FULL)�NIC_DUPLEX_HALF)�NIC_DUPLEX_UNKNOWN)�AccessDenied)�
NoSuchProcess)�
ZombieProcess)�conn_to_ntuple)�get_procfs_path)�memoize_when_activated)�
usage_percentZPROCFS_PATH�proc_threads�net_io_counters�proc_io_counters������)�ppid�rss�vms�create_time�nice�num_threads�status�ttynr�pmemrr�	scputimes)�user�systemZidleZiowait�svmem)�total�	available�percent�used�freecCs4t��\}}}}}t|||dd�}t|||||�S)Nr�Zround_)�cextZvirtual_memrr&)r'Zavailr+Z_pinnedZinuser)�r.�;/opt/osm/venv/lib/python3.10/site-packages/psutil/_psaix.py�virtual_memoryesr0cCs:t��\}}}}||}t||dd�}t�||||||�S)z=Swap system memory as a (total, used, free, sin, sout) tuple.rr,)r-Zswap_memrrZsswap)r'r+�sinZsoutr*r)r.r.r/�swap_memoryksr2cCst��}tdd�t|�D��S)z.Return system-wide CPU times as a named tuple.cSsg|]}t|��qSr.)�sum��.0�xr.r.r/�
<listcomp>{�zcpu_times.<locals>.<listcomp>)r-�
per_cpu_timesr#�zip��retr.r.r/�	cpu_timesxsr=cCst��}dd�|D�S)z6Return system per-CPU times as a list of named tuples.cSsg|]}t|��qSr.)r#r4r.r.r/r7�r8z!per_cpu_times.<locals>.<listcomp>)r-r9r;r.r.r/r9~sr9cCs"zt�d�WStyYdSw)z0Return the number of logical CPUs in the system.�SC_NPROCESSORS_ONLNN)�os�sysconf�
ValueErrorr.r.r.r/�cpu_count_logical�s
�rBcCsvgd�}tj|tjtjd�}|��\}}dd�||fD�\}}|jdkr/|�d|��}t|��|����}t|�p:dS)N)Zlsdevz-Cc�	processor��stdout�stderrcs��|]
}|�tjj�VqdS�N��decode�sysrE�encodingr4r.r.r/�	<genexpr>�s�z"cpu_count_cores.<locals>.<genexpr>rz command error
)	�
subprocess�Popen�PIPE�communicate�
returncode�RuntimeError�strip�
splitlines�len)�cmd�prErF�msgZ
processorsr.r.r/�cpu_count_cores�s
rZcCs t��\}}}}t�||||�S)z*Return various CPU stats as a named tuple.)r-�	cpu_statsrZ	scpustats)Zctx_switchesZ
interruptsZsoft_interruptsZsyscallsr.r.r/r[�s�r[Fc	Cs\g}t��}|D]#}|\}}}}|dkrd}|st|�jsqt�||||�}|�|�q|S)zReturn system disk partitions.�none�)r-�disk_partitions�
disk_usager'rZ	sdiskpart�append)	�all�retlistZ
partitions�	partitionZdeviceZ
mountpointZfstype�opts�ntupler.r.r/r^�s
r^���cCs~tj|\}}t�|�}g}|D],}|\}}}	}
}}}
||vr q|	|vr%qt|||	|
||t|dkr3|
ndd�}|�|�q|S)z�Return socket connections.  If pid == -1 return system-wide
    connections (as opposed to connections opened by one process only).
    rfN��pid)rZ	conn_tmapr-�net_connectionsr
�TCP_STATUSESr`)�kind�_pidZfamilies�types�rawlistr<�item�fdZfam�type_�laddr�raddrr rh�ntr.r.r/ri�s*
�
ricCs�ttd�}dd�t�D�}i}|D]c}t�|�}t�|�}d}d}tjdd|gtjtjd�}|�	�\}	}
d	d
�|	|
fD�\}	}
|j
dkrZt�d|	�}|durZt
|�d
��}|�d�}d�|�}d|v}
|�|t�}t�|
||||�||<q|S)z)Get NIC stats (isup, duplex, speed, mtu).)�FullZHalfcSsh|]}|d�qS)rr.r4r.r.r/�	<setcomp>�r8znet_if_stats.<locals>.<setcomp>r]rz/usr/bin/entstatz-drDcsrGrHrIr4r.r.r/rM���
�znet_if_stats.<locals>.<genexpr>z"Running: (\d+) Mbps.*?(\w+) DuplexNrr�,�running)rr�net_if_addrsr-Z
net_if_mtuZnet_if_flagsrNrOrPrQrR�re�search�int�group�join�getr	rZ	snicstats)Z
duplex_map�namesr<�nameZmtu�flagsZduplex�speedrXrErFZ	re_resultZoutput_flagsZisupr.r.r/�net_if_stats�s:


�
�
�

r�cCst��S)z:The system boot time expressed in seconds since the epoch.)r-�	boot_timer.r.r.r/r�sr�cCs\g}t��}d}|D]!}|\}}}}}}	|sq
||vrd}t�|||||	�}
|�|
�q
|S)z:Return currently connected users as a list of namedtuples.)z:0.0z:0�	localhost)r-�usersrZsuserr`)rbrnr�ror$�tty�hostnameZtstampZuser_processrhrtr.r.r/r�sr�cCsdd�t�t��D�S)z7Returns a list of PIDs currently running on the system.cSsg|]
}|��rt|��qSr.)�isdigitr}r4r.r.r/r7/szpids.<locals>.<listcomp>)r?�listdirrr.r.r.r/�pids-sr�cCstj�tj�t�t|�d��S)z&Check for the existence of a unix pid.Zpsinfo)r?�path�existsrr�strrgr.r.r/�
pid_exists2sr�cst����fdd��}|S)z�Call callable into a try/except clause and translate ENOENT,
    EACCES and EPERM in NoSuchProcess or AccessDenied exceptions.
    c
s�|j|j|j}}}z�|g|�Ri|��WSttfy6}zt|�s+t||�|�t|||�|�d}~wtyG}zt	||�|�d}~wwrH)
rh�_ppid�_name�FileNotFoundError�ProcessLookupErrorr�rr�PermissionErrorr
)�self�args�kwargsrhrr��err��funr.r/�wrapper<s���z wrap_exceptions.<locals>.wrapper)�	functools�wraps)r�r�r.r�r/�wrap_exceptions7sr�c@steZdZdZgd�Zdd�Zdd�Zdd�Zee	d	d
���Z
ee	dd���Zed
d��Zedd��Z
edd��Zedd��Zedd��Zedd��ZerRedd��Zed=dd��Zedd��Zed d!��Zed"d#��Zed$d%��Zed&d'��Zed(d)��Zed*d+��Zed,d-��Zed.d/��ZeZed0d1��Zd2d3�Z ed4d5��Z!ed6d7��Z"ed>d9d:��Z#e$r�ed;d<��Z%d8Sd8S)?�Processz1Wrapper class around underlying C implementation.)�_cacher�r��_procfs_pathrhcCs||_d|_d|_t�|_dSrH)rhr�r�rr�)r�rhr.r.r/�__init__SszProcess.__init__cC�|j�|�|j�|�dSrH)�_proc_basic_infoZcache_activate�
_proc_cred�r�r.r.r/�
oneshot_enterY�zProcess.oneshot_entercCr�rH)r�Zcache_deactivater�r�r.r.r/�oneshot_exit]r�zProcess.oneshot_exitcC�t�|j|j�SrH)r-Zproc_basic_inforhr�r�r.r.r/r�a�zProcess._proc_basic_infocCr�rH)r-Z	proc_credrhr�r�r.r.r/r�fr�zProcess._proc_credcCs$|jdkrdSt�|j|j��d�S)NrZswapper�)rhr-Z	proc_namer��rstripr�r.r.r/r�ks
zProcess.namecCs�|��}|sdS|d}tjj|vr@tj�|�s%tj�tj�|��|��}tj�|�r:tj�|�r:t�	|tj
�r:|Stj�|�}tjd�
d�D]}tj�tj�||��}tj�|�rft�	|tj
�rf|SqHdS)Nr]r�PATH�:)�cmdliner?r��sep�isabs�abspathr�cwd�isfile�access�X_OK�basename�environ�split)r�r��exer�Zpossible_exer.r.r/r�rs.
�
����zProcess.execC�t�|j�SrH)r-Z	proc_argsrhr�r.r.r/r���zProcess.cmdlinecCr�rH)r-Zproc_environrhr�r.r.r/r��r�zProcess.environcC�|��tdS)Nr�r��
proc_info_mapr�r.r.r/r��zProcess.create_timecCr�)Nrr�r�r.r.r/r�r�zProcess.num_threadscCsXt�|j�}g}|D]\}}}t�|||�}|�|�q
|s*t�|j�d|j���|S)N�/)	r-rrhrZpthreadr`r?�statr�)r�rnrbZ	thread_id�utimeZstimerer.r.r/�threads�szProcess.threads�inetcCs.t||jd�}|st�|j�d|j���|S)N)rlr�)rirhr?r�r�)r�rkr<r.r.r/ri�szProcess.net_connectionscCr�rH)r-Zproc_priority_getrhr�r.r.r/�nice_get�r�zProcess.nice_getcCst�|j|�SrH)r-Zproc_priority_setrh)r��valuer.r.r/�nice_set�szProcess.nice_setcCs|��td|_|jS)Nr)r�r�r�r�r.r.r/r�szProcess.ppidcCs"|��\}}}}}}t�|||�SrH�r�rZpuids)r��real�	effective�saved�_r.r.r/�uids��zProcess.uidscCs"|��\}}}}}}t�|||�SrHr�)r�r�r�r�r�r.r.r/�gids�r�zProcess.gidscCst�|j|j�}tj|�SrH)r-Zproc_cpu_timesrhr�rZ	pcputimes)r��tr.r.r/r=�s
zProcess.cpu_timescCsP|��td}|d@d?|d@B}t�d�D]}t�|�j|kr%|SqdS)Nr!l��i��z	/dev/**/*)r�r��globr?r��st_rdev)r�Zttydev�devr.r.r/�terminal�s�zProcess.terminalcCsV|j}zt�|�d|j�d��}|�d�WSty*t�|�d|j���YdSw)Nr�z/cwdr])r�r?�readlinkrhr�r�r�)r�Zprocfs_path�resultr.r.r/r��s�zProcess.cwdcCs2|��}|tdd}|tdd}t||�S)Nrir)r�r�r")r�r<rrr.r.r/�memory_info�s
zProcess.memory_infocCs|��td}t�|d�S)Nr �?)r�r��
PROC_STATUSESr�)r��coder.r.r/r �szProcess.statuscCs�tjddt|j�gtjtjd�}|��\}}dd�||fD�\}}d|��vr.t|j|j��t	�
d|�}g}|D]%\}}|��}|�d�rK|d	d�}|��d
krRq8|�
t�|t|���q8|S)Nz/usr/bin/procfilesz-nrDcsrGrHrIr4r.r.r/rM	rwz%Process.open_files.<locals>.<genexpr>zno such processz(\d+): S_IFREG.*name:(.*)\nz//rzcannot be retrieved)rNrOr�rhrPrQ�lowerrr�r{�findallrT�
startswithr`rZ	popenfiler})r�rXrErFZ	procfilesrbrpr�r.r.r/�
open_filess*�
�
zProcess.open_filescCs,|jdkrdStt�|j�d|j�d���S)Nrr�z/fd)rhrVr?r�r�r�r.r.r/�num_fdss
zProcess.num_fdscCstjt�|j��SrH)rZpctxswr-Zproc_num_ctx_switchesrhr�r.r.r/�num_ctx_switches�zProcess.num_ctx_switchesNcCst�|j||j�SrH)rZwait_pidrhr�)r��timeoutr.r.r/�wait#r�zProcess.waitc
Cs^zt�|j�\}}}}Wnty&}zt|j�s!t|j|j�|��d}~wwt�||||�SrH)	r-rrh�OSErrorr�rr�rZpio)r��rc�wc�rb�wbr�r.r.r/�io_counters)s
��zProcess.io_counters)r�rH)&�__name__�
__module__�__qualname__�__doc__�	__slots__r�r�r�r�rr�r�r�r�r�r�rr�HAS_THREADSr�rir�r�rr�r�r=r�r�r�Zmemory_full_infor r�r�r�r��HAS_PROC_IO_COUNTERSr�r.r.r.r/r�Nsz















	



�r�)F)rf)]r�r�r�r?r{rNrK�collectionsrr]rrrr-rrr	r
rrr
rrrZ__extra__all__�hasattrr�ZHAS_NET_IO_COUNTERSr�ZgetpagesizeZ	PAGE_SIZEZAF_LINKZSIDLZSTATUS_IDLEZSZOMBZ
STATUS_ZOMBIEZSACTIVEZSTATUS_RUNNINGZSSWAPZSSTOPZSTATUS_STOPPEDr�ZTCPS_ESTABLISHEDZCONN_ESTABLISHEDZ
TCPS_SYN_SENTZ
CONN_SYN_SENTZ
TCPS_SYN_RCVDZ
CONN_SYN_RECVZTCPS_FIN_WAIT_1ZCONN_FIN_WAIT1ZTCPS_FIN_WAIT_2ZCONN_FIN_WAIT2ZTCPS_TIME_WAITZCONN_TIME_WAITZTCPS_CLOSEDZ
CONN_CLOSEZTCPS_CLOSE_WAITZCONN_CLOSE_WAITZ
TCPS_LAST_ACKZ
CONN_LAST_ACKZTCPS_LISTENZCONN_LISTENZTCPS_CLOSINGZCONN_CLOSINGZPSUTIL_CONN_NONEZ	CONN_NONErj�dictr�r"Zpfullmemr#r&r0r2r=r9rBrZr[Zdisk_io_countersr_r^rzrrir�r�r�r�r�r�r�r.r.r.r/�<module>s�


�	��
	


+