CasperSecurity

Current Path : /lib/python3.10/multiprocessing/__pycache__/
Upload File :
Current File : //lib/python3.10/multiprocessing/__pycache__/reduction.cpython-310.pyc

o

`�wi(%�@sddlmZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
gd�Zejdkp@e
ed�o@e
ed�o@e
ejd	�ZGd
d�dej�ZejZd8dd
�Zejdkr~egd�7ZddlZd9dd�dd�Zdd�Zdd�Zdd�ZGdd�de�Zn#egd�7ZddlZejdkZdd�Zdd �Zd!d�Zd"d�Zd#d$�Zd%d&�ZGd'd(�d(�Z ee!e �j"�e�d)d*�Z#ee!e$j%�e#�ee!e&j'�e#�d+d,�Z(d-d.�Z)eej*e(�ejdkr�d/d0�Z+d1d2�Z,eeje+�nd3d0�Z+d4d2�Z,eeje+�Gd5d6�d6ed7�Z-dS):�)�ABCMetaN�)�context)�send_handle�recv_handle�ForkingPickler�register�dump�win32�CMSG_LEN�
SCM_RIGHTS�sendmsgcsJeZdZdZiZejZ�fdd�Ze	dd��Z
e	d	dd��Zej
Z
�ZS)
rz)Pickler subclass used by multiprocessing.cs*t�j|�|j��|_|j�|j�dS�N)�super�__init__�_copyreg_dispatch_table�copy�dispatch_table�update�_extra_reducers��self�args��	__class__��0/usr/lib/python3.10/multiprocessing/reduction.pyr&szForkingPickler.__init__cCs||j|<dS)z&Register a reduce function for a type.N)r)�cls�type�reducerrrr+szForkingPickler.registerNcCs t��}|||��|�|��Sr)�io�BytesIOr	�	getbuffer)r�obj�protocol�bufrrr�dumps0szForkingPickler.dumpsr)�__name__�
__module__�__qualname__�__doc__r�copyregrrr�classmethodrr&�pickle�loads�
__classcell__rrrrr!s
rcCst||��|�dS)z3Replacement for pickle.dump() using ForkingPickler.N)rr	)r#�filer$rrrr	:sr	)�	DupHandle�	duplicate�steal_handleF)�source_processcCs6t��}|dur
|}|dur|}t�|||d|tj�S)z<Duplicate a handle.  (target_process is a handle not a pid!)Nr)�_winapi�GetCurrentProcess�DuplicateHandle�DUPLICATE_SAME_ACCESS)�handle�target_process�inheritabler4�current_processrrrr2Gs�r2c	CsJt�tjd|�}zt�||t��ddtjtjB�Wt�|�St�|�w)z5Steal a handle from process identified by source_pid.Fr)r5�OpenProcess�PROCESS_DUP_HANDLEr7r6r8�DUPLICATE_CLOSE_SOURCE�CloseHandle)�
source_pidr9�source_process_handlerrrr3Ss�

�r3cCst|tj|�}|�|�dS�z&Send a handle over a local connection.N)r1r5r8�send)�connr9�destination_pid�dhrrrr_srcCs|����S)�)Receive a handle over a local connection.)�recv�detach)rErrrrdsrc@s"eZdZdZddd�Zdd�ZdS)r1zPicklable wrapper for a handle.Nc	Csf|durt��}t�tjd|�}zt�t��|||dd�|_Wt�|�nt�|�w||_	||_
dS)NFr)�os�getpidr5r=r>r7r6�_handler@�_access�_pid)rr9�access�pid�procrrrrjs
�
zDupHandle.__init__c	Cs^|jt��kr
|jSt�tjd|j�}zt�||jt��|j	dtj
�Wt�|�St�|�w)z1Get the handle.  This should only be called once.F)rOrKrLrMr5r=r>r7r6rNr?r@)rrRrrrrJys
�
�zDupHandle.detachr)r'r(r)r*rrJrrrrr1hs
r1)�DupFd�sendfds�recvfds�darwincCsZt�d|�}tt|�dg�}|�|gtjtj|fg�tr)|�d�dkr+t	d��dSdS)z,Send an array of fds over an AF_UNIX socket.�i�r�Az%did not receive acknowledgement of fdN)
�array�bytes�lenr
�socket�
SOL_SOCKETr�ACKNOWLEDGErI�RuntimeError)�sock�fds�msgrrrrT�s�rTc	Cst�d�}|j|}|�dt�|��\}}}}|s|st�z[tr%|�d�t|�dkr3t	dt|���|d\}}	}
|tj
kro|	tjkrtt|
�|jdkrOt�|�
|
�t|�d|dkrjtd�t|�|d���t|�WSWt	d��Wt	d��ttfy�Yt	d��w)	z/Receive an array of fds over an AF_UNIX socket.rWrrYzreceived %d items of ancdatarrXz Len is {0:n} but msg[0] is {1!r}zInvalid data received)rZ�itemsize�recvmsgr]�
CMSG_SPACE�EOFErrorr_rDr\r`r^r�
ValueError�	frombytes�AssertionError�format�list�
IndexError)ra�size�a�
bytes_sizerc�ancdata�flags�addr�
cmsg_level�	cmsg_type�	cmsg_datarrrrU�sB


�


��
����rUcCsHt�|��tjtj��}t||g�Wd�dS1swYdSrC)r]�fromfd�fileno�AF_UNIX�SOCK_STREAMrT)rEr9rF�srrrr�s"�cCsHt�|��tjtj��}t|d�dWd�S1swYdS)rHrrN)r]rwrxryrzrU)rEr{rrrr�s$�cCsBt��}|dur|�|�|��Strddlm}|�|�Std��)zReturn a wrapper for an fd.Nr)�resource_sharerz&SCM_RIGHTS appears not to be available)r�get_spawning_popenrS�duplicate_for_child�HAVE_SEND_HANDLE�r|rh)�fd�	popen_objr|rrrrS�s
rScCs.|jdurt|j|jjffSt|j|jjffSr)�__self__�getattrr�__func__r'��mrrr�_reduce_method�s
r�c@seZdZdd�ZdS)�_CcCsdSrr)rrrr�f�sz_C.fN)r'r(r)r�rrrrr��sr�cCst|j|jffSr)r��__objclass__r'r�rrr�_reduce_method_descriptor�sr�cCst|j|j|jp	iffSr)�_rebuild_partial�funcr�keywords)�prrr�_reduce_partial��r�cCstj|g|�Ri|��Sr)�	functools�partial)r�rr�rrrr��r�r�cCsddlm}t||�ffS)Nr)�	DupSocket)r|r��_rebuild_socket)r{r�rrr�_reduce_socket�sr�cCs|��Sr)rJ)�dsrrrr��sr�cCs"t|���}t||j|j|jffSr)rSrxr��familyr�proto)r{�dfrrrr��scCs|��}tj||||d�S)N)rx)rJr])r�r�rr�r�rrrr��sc@sdeZdZdZeZeZeZeZeZe	j
dkreZeZe
Z
neZeZeZeZeZeZeZeZdd�ZdS)�AbstractReducerz�Abstract base class for use in implementing a Reduction class
    suitable for use in replacing the standard reduction mechanism
    used in multiprocessing.r
cGsNttt�j�t�tttj�t�tttj	�t�tt
jt�tt
j
t�dSr)rrr�r�r�rl�appendr��int�__add__r�r�r�r]r�rrrrrs
zAbstractReducer.__init__N)r'r(r)r*rrr	rr�sys�platformr3r2r1rTrUrSr�r�r�r�r�rrrrrr��s(
r�)�	metaclassr)NF).�abcrr+r�r rKr-r]r�r�r�__all__r��hasattrr�Picklerrrr	r5r2r3rr�objectr1rZr_rTrUrSr�r�rr�r�rlr�r�r�r�r�r�r�r�r�rrrr�<module>sl	

�
�	

�#


Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY