HEX
Server: LiteSpeed
System: Linux srv146.niagahoster.com 4.18.0-553.30.1.lve.el8.x86_64 #1 SMP Tue Dec 3 01:21:19 UTC 2024 x86_64
User: kodi1989 (1633)
PHP: 8.1.34
Disabled: symlink,shell_exec,exec,popen,system,dl,passthru,escapeshellarg,escapeshellcmd,show_source,pcntl_exec
Upload Files
File: //opt/alt/python37/lib/python3.7/site-packages/pyroute2/netlink/__pycache__/buffer.cpython-37.pyc
B

��f��@sJyddlmZWnek
r(dZYnXGdd�d�ZGdd�d�ZdS)�)�
shared_memoryNc@s0eZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�Pagez
    Memory page.
    cCs||_||_d|_dS)NT)�view�offset�is_free)�selfrr�r�H/opt/alt/python37/lib/python3.7/site-packages/pyroute2/netlink/buffer.py�__init__sz
Page.__init__cCs
d|_dS)NF)r)rrrr	�useszPage.usecCs
d|_dS)NT)r)rrrr	�freesz	Page.freecCs|j��dS)N)r�release)rrrr	�closesz
Page.closeN)�__name__�
__module__�__qualname__�__doc__r
rrrrrrr	rs
rc@sBeZdZdZddd�Zdd�Zd	d
�Zdd�Zd
d�Zdd�Z	dS)�Bufferz?
    Manage the buffer memory to receive raw netlink data.
    �internal����cCs�||_||_||_|jdkr0d|_t|j�|_n6|jdkrftdkrJtd��tjd|jd�|_|jj|_t	|j�|_
i|_x<t||�D],}||}t
|j
|||j�|�|j|<q�WdS)Nr�sharedz"shared memory buffer not supportedT)�create�size)�moder�	page_size�mem�	bytearray�bufr�ModuleNotFoundErrorZSharedMemory�
memoryviewr�	directory�ranger)rrrr�indexrrrr	r
 s"


zBuffer.__init__cCs|S)Nr)rrrr	�	__enter__4szBuffer.__enter__cCs|��dS)N)r)r�exc_type�	exc_value�	tracebackrrr	�__exit__7szBuffer.__exit__cCs6x(|j��D]\}}|jr|��|SqWtd��dS)Nzno free memory pages available)r!�itemsrr�MemoryError)rr#�pagerrr	�
get_free_page:s
zBuffer.get_free_pagecCsHx|j��D]}|��qW|j��|jdkrD|j��|j��dS)Nr)r!�valuesrrr
rr�unlink)rr+rrr	rAs


zBuffer.closecCs
|j|S)N)r!)r�keyrrr	�__getitem__IszBuffer.__getitem__N)rrr)
rrrrr
r$r(r,rr0rrrr	rs
r)�multiprocessingr�ImportErrorrrrrrr	�<module>s