HEX
Server: Apache
System: Linux nc-ph-4101.simplemoneygoals.com 5.14.0-503.21.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Jan 12 09:45:05 EST 2025 x86_64
User: dailygoldindex (1004)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //lib/python3.9/site-packages/iotop/__pycache__/netlink.cpython-39.opt-1.pyc
a

B��Q��@s�dZddlZddlZddlZzDe�ejejd�Ze�d�[dd�Zdd�Z	dd	�Z
d9dd�ZWn�ej�y�z.ddl
Z
d
d�Zdd�Z	dd	�Z
d:dd�ZWnXey�ddlZe�d�ZGdd�dej�Zdd�Zdd�Z	dd	�Z
d;dd�ZYn0Yn0dZdZdZdZdZdZdZdZdZGdd�d�ZGdd �d e�ZGd!d"�d"e�ZGd#d$�d$e�Z Gd%d&�d&e�Z!Gd'd(�d(e�Z"dZ#dZ$dZ%dZ&dZ'd)Z(d*Z)d+Z*dZ+d,Z,d-Z-d.Z.d/Z/d0Z0d1Z1d2Z2dZ3Gd3d4�d4�Z4Gd5d6�d6�Z5d7d8�Z6dS)<z�
Netlink message generation/parsing

Copyright 2007        Johannes Berg <johannes@sipsolutions.net>

GPLv2+; See copying for details.
�N)rrcCs|�|�dS�N)�bind��
descriptor�addr�r�1/usr/lib/python3.9/site-packages/iotop/netlink.py�_nl_bindsr	cCs|��Sr)�getsockname�rrrr�_nl_getsocknamesrcCs|�|�dSr)�send�r�msgrrr�_nl_sendsr�@cCs
|�|�Sr)�recvfrom�r�bufsrrr�_nl_recvsrcCst�|��|d�dS�N�)�_netlinkr�filenorrrrr	scCst�|���Sr)rr
rrrrrr scCst�|��|�dSr)rr
rrrrrr"scCst�|��|�Sr)rrrrrrrr$sc@s0eZdZdejfdejfdejfdejfgZdS)�SOCKADDR_NLZ	nl_familyZnl_pad�nl_pid�	nl_groupsN)�__name__�
__module__�__qualname__�ctypesZc_ushort�c_intZ_fields_rrrrr,s
�rcCs2ttjdt��d�}t�|��t�	|�t�
|��S�Nr)r�socket�
AF_NETLINK�os�getpid�libcrrr �pointer�sizeofrrrrr	2s

�cCsHtdddd�}t�t�|��}t�|��t�|�t�|��|j|j	fSr")
rr r!r)r'r
rr(rr)rr�lenrrrr8s
�cCst�|��|t|�d�Sr")r'r
rr*rrrrr@sc
Csntdddd�}t�t�|��}t�|�}t�|��||dt�|�t�|��}t�	t�|�|�}||j
|jffSr")rr r!r)Zcreate_string_bufferr'rrr(Z	string_atrr)rrrr*�buf�r�retrrrrCs

�r�����c@s\eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�ZdS)�AttrcGs.||_t|�r$tj|g|�R�|_n||_dSr)�typer*�struct�pack�data)�self�	attr_typer7�valuesrrr�__init__^sz
Attr.__init__cCsJt�dt|j�d|j�}t|j�}|ddd@|}||jd|S)N�HHr/r����)r5r6r*r7r4)r8�hdr�lengthZpadrrr�_dumpes
z
Attr._dumpcCsd|jt|j�fS)Nz<Attr type %d, data "%s">)r4�reprr7�r8rrr�__repr__ksz
Attr.__repr__cCst�d|j�dS)N�Hr�r5�unpackr7rCrrr�u16nszAttr.u16cCst�d|j�dS)N�hrrFrCrrr�s16pszAttr.s16cCst�d|j�dS)N�IrrFrCrrr�u32rszAttr.u32cCst�d|j�dS)N�irrFrCrrr�s32tszAttr.s32cCs|jSr)r7rCrrr�strvszAttr.strcCs|j�d�dS)N�r)r7�splitrCrrr�nulstrxszAttr.nulstrcCs
t|j�Sr)�parse_attributesr7rCrrr�nestedzszAttr.nestedN)
rrrr;rArDrHrJrLrNrOrRrTrrrrr3]sr3c@seZdZdd�ZdS)�StrAttrcCs"t�||dt|�|�d��dS)Nz%ds�utf-8�r3r;r*�encode�r8r9r7rrrr;~szStrAttr.__init__N�rrrr;rrrrrU}srUc@seZdZdd�ZdS)�
NulStrAttrcCs$t�||dt|�|�d�d�dS)Nz%dsBrVrrWrYrrrr;�szNulStrAttr.__init__NrZrrrrr[�sr[c@seZdZdd�ZdS)�U32AttrcCst�||d|�dS)NrK�r3r;�r8r9�valrrrr;�szU32Attr.__init__NrZrrrrr\�sr\c@seZdZdd�ZdS)�U8AttrcCst�||d|�dS)N�Br]r^rrrr;�szU8Attr.__init__NrZrrrrr`�sr`c@seZdZdd�Zdd�ZdS)�NestedcCs||_||_dSr)�attrsr4)r8r9rcrrrr;�szNested.__init__cCsLg}|jD]}|�|���q
d�|�}t|�}t�d|d|j�}||S)N�r<r/)rc�appendrA�joinr*r5r6r4)r8�contents�attrr@r?rrrrA�s

zNested._dumpN)rrrr;rArrrrrb�srb����	�
���
��c@s&eZdZd
dd�Zdd�Zdd	�ZdS)�Messager���NcCs^||_||_||_d|_|pg}t|t�rTg}|D]}|�|���q2d�|�|_	n||_	dS)Nrt�)
r4�flags�seq�pid�
isinstance�listrerArf�payload)r8�msg_typervrwr{rgrhrrrr;�s
zMessage.__init__cCsZ|jdkr|��|_|j|_t|j�}t�d|d|j|j|j|j�}|�||j�dS)Nrt�IHHIIr2)	rwrxr*r{r5r6r4rvr
)r8Zconnr@r?rrrr
�s


�zMessage.sendcCs d|j|j|j|jt|j�fS)Nz:<netlink.Message type=%d, pid=%d, seq=%d, flags=0x%x "%s">)r4rxrwrvrBr{rCrrrrD�s�zMessage.__repr__)rrtN)rrrr;r
rDrrrrrs�s
rsc@s.eZdZddd�Zdd�Zdd�Zd	d
�ZdS)�
ConnectionrNcCsnt�tjtj|�|_|j�tjtjd�|j�tjtjd�t|jd|f�t	|j�\|_
|_d|_||_
dS)Nir)r#r$�SOCK_RAWrZ
setsockoptZ
SOL_SOCKETZ	SO_SNDBUFZ	SO_RCVBUFr	rrx�groups�_seqZ
unexpected)r8Znltyper�Zunexpected_msg_handlerrrrr;�s�zConnection.__init__cCst|j|�dSr)rr)r8rrrrr
�szConnection.sendcCs�t|j�\}\}}t�d|dd��\}}}}}t||||dd��}	||	_|	jtkr�t�d|	jdd��d}
|
dkr�t	dt
�|
�|
f�}|
|_|�|	S)Nr}r2rMr/rzNetlink error: %s (%d))
rrr5rGrsrxr4�NLMSG_ERRORr{�OSErrorr%�strerror�errno)r8rgZnlpidZnlgrpsZmsglenr|rvrwrxrr��errrrr�recv�s
�

�zConnection.recvcCs|jd7_|jSr)r�rCrrrrw�szConnection.seq)rN)rrrr;r
r�rwrrrrr~�s
	r~cCs\i}t|�rXt�d|dd��\}}t||d|��||<|ddd@}||d�}q|S)Nr<r/rr=)r*r5rGr3)r7rcZattr_lenr9rrrrS�srS)r)r)r)7�__doc__r%r#r5r$rZ
_dummysockrr	rrr�errorr�ImportErrorr ZCDLLr'Z	StructurerZ
NLM_F_REQUESTZNLM_F_MULTIZ	NLM_F_ACKZ
NLM_F_ECHOZ
NLMSG_NOOPr�Z
NLMSG_DONEZ
NLMSG_OVERRUNZNLMSG_MIN_TYPEr3rUr[r\r`rbZ
NETLINK_ROUTEZNETLINK_UNUSEDZNETLINK_USERSOCKZNETLINK_FIREWALLZNETLINK_INET_DIAGZ
NETLINK_NFLOGZNETLINK_XFRMZNETLINK_SELINUXZ
NETLINK_ISCSIZ
NETLINK_AUDITZNETLINK_FIB_LOOKUPZNETLINK_CONNECTORZNETLINK_NETFILTERZNETLINK_IP6_FWZNETLINK_DNRTMSGZNETLINK_KOBJECT_UEVENTZNETLINK_GENERICrsr~rSrrrr�<module>sz