OwlCyberSecurity - MANAGER
Edit File: heap.cpython-36.opt-2.pyc
3 ��2a ������������������@���s����d�dl�Z�d�dlZd�dlZd�dlZd�dlZd�dlZddlmZmZ�ddl m Z �dgZejdkrvd�dl Z G�dd��de�Zn,G�d d��de�Zd d��Zdd ��Zejee��G�dd��de�ZG�dd��de�ZdS�)�����N����)� reduction�assert_spawning)�util� BufferWrapper�win32c���������������@���s,���e�Zd�Zej��Zdd��Zdd��Zdd��ZdS�)�Arenac�������������C���sz���||�_�xTtd�D�]@}dtj��t|�j�f�}tjd||d�}tj��dkrHP�|j ���qW�t d��||�_||�_|�j�|�jf|�_ d�S�)N�d���z pym-%d-%sr���)�tagnamer���zCannot find name for new mmap���)�size�range�os�getpid�next�_rand�mmap�_winapiZGetLastError�close�FileExistsError�name�buffer�_state)�selfr����ir����buf��r����)/opt/alt/python36/lib64/python3.6/heap.py�__init__"���s����zArena.__init__c�������������C���s���t�|���|�jS�)N)r���r���)r���r���r���r����__getstate__1���s����zArena.__getstate__c�������������C���s,���|�\|�_�|�_|�_tjd|�j�|�jd�|�_d�S�)Nr���)r ���r���)r���r���r���r���r���)r����stater���r���r����__setstate__5���s����zArena.__setstate__N) �__name__� __module__�__qualname__�tempfileZ_RandomNameSequencer���r���r���r!���r���r���r���r���r������s���r���c���������������@���s���e�Zd�Zddd�ZdS�)r���r���c�������������C���s����||�_�||�_|d kr�tjdtj���tj��d�\|�_}tj|��tj |�tj |�jf��t|�jddd��N}d }||kr�d|�}xt||��D�]}|j |��q�W�~|j d||����W�d�Q�R�X�tj|�j|�j��|�_d�S�)Nr���zpym-%d-)�prefix�dir�wbF)�closefdi��������r���i���)r����fdr%���Zmkstempr���r���r���Zget_temp_dir�unlink�Finalizer����openr ����writer���r���)r���r���r+���r����f�bsZzeros�_r���r���r���r���@���s"���� zArena.__init__Nr���)r���)r"���r#���r$���r���r���r���r���r���r���>���s���c�������������C���s(���|�j�dkrtd��t|�jtj|�j��ffS�)Nr���zDArena is unpicklable because forking was enabled when it was createdr���)r+���� ValueError� rebuild_arenar���r���ZDupFd)�ar���r���r����reduce_arenaS���s���� r6���c�������������C���s���t�|�|j���S�)N)r����detach)r���Zdupfdr���r���r���r4���Y���s����r4���c���������������@���sZ���e�Zd�ZdZejfdd�Zedd���Zdd��Z dd ��Z d d��Zdd ��Zdd��Z dd��ZdS�)�Heap����c�������������C���sJ���t�j��|�_tj��|�_||�_g�|�_i�|�_i�|�_ i�|�_ t��|�_g�|�_ g�|�_d�S�)N)r���r����_lastpid� threadingZLock�_lock�_size�_lengths�_len_to_seq�_start_to_block�_stop_to_block�set�_allocated_blocks�_arenas�_pending_free_blocks)r���r���r���r���r���r���f���s���� z Heap.__init__c�������������C���s���|d�}|�|�|�@�S�)Nr���r���)�nZ alignment�maskr���r���r����_roundups���s����z Heap._roundupc������� ������C���s����t�j|�j|�}|t|�j�krj|�jt|�j|�tj�}|��jd9��_t j d|��t|�}|�jj |��|d|fS�|�j|�}|�j|�}|j��}|s�|�j|=�|�j|=�|\}}}|�j||f=�|�j||f=�|S�)N����z"allocating a new mmap of length %dr���)�bisectZbisect_leftr>����lenrH����maxr=���r����PAGESIZEr����infor���rD����appendr?����popr@���rA���) r���r���r����length�arena�seq�block�start�stopr���r���r����_mallocy���s"���� zHeap._mallocc������� ������C���s����|\}}}y|�j�||f�}W�n�tk r0���Y�nX�|�j|�\}}y|�j||f�}W�n�tk rf���Y�nX�|�j|�\}}|||f}||�}y|�j|�j|��W�n.�tk r����|g|�j|<�tj|�j|��Y�nX�||�j||f<�||�j�||f<�d�S�)N) rA����KeyError�_absorbr@���r?���rO���rJ���Zinsortr>���) r���rT���rR���rU���rV���Z prev_blockr2���Z next_blockrQ���r���r���r����_free����s(���� z Heap._freec�������������C���s^���|\}}}|�j�||f=�|�j||f=�||�}|�j|�}|j|��|sV|�j|=�|�jj|��||fS�)N)r@���rA���r?����remover>���)r���rT���rR���rU���rV���rQ���rS���r���r���r���rY�������s���� zHeap._absorbc�������������C���sF���x@y|�j�j��}W�n�tk r&���P�Y�nX�|�jj|��|�j|��qW�d�S�)N)rE���rP���� IndexErrorrC���r[���rZ���)r���rT���r���r���r����_free_pending_blocks����s����zHeap._free_pending_blocksc���������� ���C���sN���|�j�jd�s|�jj|��n0z"|�j���|�jj|��|�j|��W�d�|�j�j���X�d�S�)NF) r<����acquirerE���rO���r]���rC���r[���rZ����release)r���rT���r���r���r����free����s����z Heap.freec�������������C���s����t�j��|�jkr|�j���|�j�h�|�j���|�jt|d�|�j�}|�j |�\}}}||�}||k�rj|�j |||f��|||f}|�jj|��|S�Q�R�X�d�S�)Nr���) r���r���r:���r���r<���r]���rH���rL���� _alignmentrW���rZ���rC����add)r���r���rR���rU���rV���Znew_stoprT���r���r���r����malloc����s���� zHeap.mallocN)r"���r#���r$���ra���r���rM���r����staticmethodrH���rW���rZ���rY���r]���r`���rc���r���r���r���r���r8���b���s��� r8���c���������������@���s"���e�Zd�Ze��Zdd��Zdd��ZdS�)r���c�������������C���s0���t�jj|�}||f|�_tj|�t�jj|fd��d�S�)N)�args)r����_heaprc���r���r���r-���r`���)r���r���rT���r���r���r���r�������s���� zBufferWrapper.__init__c�������������C���s&���|�j�\\}}}}t|j�|||���S�)N)r���� memoryviewr���)r���rR���rU���rV���r���r���r���r����create_memoryview����s����zBufferWrapper.create_memoryviewN)r"���r#���r$���r8���rf���r���rh���r���r���r���r���r�������s���)rJ���r���r����sysr%���r;����contextr���r�����r����__all__�platformr����objectr���r6���r4����registerr8���r���r���r���r���r����<module> ���s$��� �