⚝
One Hat Cyber Team
⚝
Your IP:
3.143.218.47
Server IP:
97.74.87.16
Server:
Linux 16.87.74.97.host.secureserver.net 5.14.0-503.38.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Apr 18 08:52:10 EDT 2025 x86_64
Server Software:
Apache
PHP Version:
8.2.28
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
opt
/
python38
/
lib
/
python3.8
/
asyncio
/
__pycache__
/
View File Name :
unix_events.cpython-38.opt-2.pyc
U ���(�ITnQb��������������������@���s���d�dl�Z�d�dlZd�dlZd�dlZd�dlZd�dlZd�dlZd�dlZd�dlZd�dl Z d�dl Z d�dlZddlm Z �ddlmZ�ddlmZ�ddlmZ�ddlmZ�ddlmZ�dd lmZ�dd lmZ�ddlmZ�ddlmZ�dd lmZ�dZe jdkr�ed��dd��ZG�dd��dej�ZG�dd��dej�Z G�dd��dej!ej"�Z#G�dd��dej$�Z%G�dd��d�Z&dd��Z'G�dd ��d e&�Z(G�d!d"��d"e(�Z)G�d#d$��d$e(�Z*G�d%d&��d&e&�Z+G�d'd(��d(e&�Z,G�d)d*��d*ej-�Z.eZ/e.Z0dS�)+�����N����)�base_events)�base_subprocess)� constants)� coroutines)�events)� exceptions)�futures)�selector_events)�tasks)� transports)�logger)�SelectorEventLoop�AbstractChildWatcher�SafeChildWatcher�FastChildWatcher�MultiLoopChildWatcher�ThreadedChildWatcher�DefaultEventLoopPolicy�win32z+Signals are not really supported on Windowsc�����������������C���s���d�S��N��)�signum�framer���r����2/opt/python38/lib/python3.8/asyncio/unix_events.py�_sighandler_noop*���s����r���c�����������������������s����e�Zd�Zd(��fdd� Z��fdd�Zdd��Zdd ��Zd d��Zdd ��Zdd��Z d)dd�Z d*dd�Zd+dd�Zdd��Z d,ddddd�dd�Zd-dddddd�dd�Zd d!��Zd"d#��Zd$d%��Zd&d'��Z���ZS�).�_UnixSelectorEventLoopNc��������������������s���t����|��i�|�_d�S�r���)�super�__init__�_signal_handlers)�self�selector�� __class__r���r���r���5���s����z_UnixSelectorEventLoop.__init__c��������������������sZ���t�������t���s.t|�j�D�]}|��|��qn(|�jrVtjd|��d�t |�d��|�j� ���d�S�)NzClosing the loop z@ on interpreter shutdown stage, skipping signal handlers removal��source)r����close�sys� is_finalizing�listr����remove_signal_handler�warnings�warn�ResourceWarning�clear�r ����sigr"���r���r���r&���9���s���� �z_UnixSelectorEventLoop.closec�����������������C���s���|D�]}|sq|���|��qd�S�r���)�_handle_signal)r ����datar���r���r���r����_process_self_dataG���s����z)_UnixSelectorEventLoop._process_self_datac�������������� ���G���sL��t��|�st��|�rtd��|��|��|�����zt�|�j� ����W�n2�t tfk rt�}�ztt |���W�5�d�}~X�Y�nX�t�|||�d��}||�j|<�zt�|t��t�|d��W�n��tk �rF�}�zz|�j|=�|�j�szt�d��W�n4�t tfk �r�}�zt�d|��W�5�d�}~X�Y�nX�|jtjk�r4td|��d���n��W�5�d�}~X�Y�nX�d�S�)Nz3coroutines cannot be used with add_signal_handler()F����set_wakeup_fd(-1) failed: %s�sig � cannot be caught)r���ZiscoroutineZiscoroutinefunction� TypeError� _check_signal� _check_closed�signal� set_wakeup_fdZ_csock�fileno� ValueError�OSError�RuntimeError�strr����Handler���r����siginterruptr ����info�errno�EINVAL)r ���r0����callback�args�exc�handleZnexcr���r���r����add_signal_handlerN���s2���� � z)_UnixSelectorEventLoop.add_signal_handlerc�����������������C���s8���|�j��|�}|d�krd�S�|jr*|��|��n |��|��d�S�r���)r����getZ _cancelledr*���Z_add_callback_signalsafe)r ���r0���rJ���r���r���r���r1���{���s����z%_UnixSelectorEventLoop._handle_signalc�������������� ���C���s����|���|��z|�j|=�W�n�tk r,���Y�dS�X�|tjkr@tj}ntj}zt�||��W�nB�tk r��}�z$|jtj kr�t d|��d���n��W�5�d�}~X�Y�nX�|�js�zt�d��W�n2�ttfk r��}�zt �d|��W�5�d�}~X�Y�nX�dS�)NFr6���r7���r4���r5���T)r9���r����KeyErrorr;����SIGINT�default_int_handler�SIG_DFLr?���rE���rF���r@���r<���r>���r ���rD���)r ���r0����handlerrI���r���r���r���r*�������s(���� z,_UnixSelectorEventLoop.remove_signal_handlerc�����������������C���s6���t�|t�std|����|t���kr2td|�����d�S�)Nzsig must be an int, not zinvalid signal number )� isinstance�intr8���r;���� valid_signalsr>���r/���r���r���r���r9�������s���� z$_UnixSelectorEventLoop._check_signalc�����������������C���s���t�|�||||�S�r���)�_UnixReadPipeTransport�r ����pipe�protocol�waiter�extrar���r���r����_make_read_pipe_transport����s����z0_UnixSelectorEventLoop._make_read_pipe_transportc�����������������C���s���t�|�||||�S�r���)�_UnixWritePipeTransportrV���r���r���r����_make_write_pipe_transport����s����z1_UnixSelectorEventLoop._make_write_pipe_transportc ����������� ��� �������s����t������} | ���std��|����}t|�|||||||f||d�| ��}| �|���|�j|��z|I�d�H��W�nD�t t fk r������Y�n,�tk r����|����|� ��I�d�H����Y�nX�W�5�Q�R�X�|S�)NzRasyncio.get_child_watcher() is not activated, subprocess support is not installed.)rY���rZ���)r����get_child_watcher� is_activer@���� create_future�_UnixSubprocessTransport�add_child_handlerZget_pid�_child_watcher_callback� SystemExit�KeyboardInterrupt� BaseExceptionr&����_wait) r ���rX���rH����shell�stdin�stdout�stderr�bufsizerZ����kwargs�watcherrY����transpr���r���r����_make_subprocess_transport����s8���� ������� ��z1_UnixSelectorEventLoop._make_subprocess_transportc�����������������C���s���|���|j|��d�S�r���)�call_soon_threadsafeZ_process_exited)r ����pid� returncodero���r���r���r���rc�������s����z._UnixSelectorEventLoop._child_watcher_callback)�ssl�sock�server_hostname�ssl_handshake_timeoutc���������� ����������s ��|r|d�kr6t�d��n |d�k r&t�d��|d�k r6t�d��|d�k r�|d�k rNt�d��t�|�}t�tjtjd�}z |�d��|��||�I�d�H��W�q����|������Y�q�X�n@|d�kr�t�d��|j tjks�|j tjkr�t�d|����|�d��|�j|||||d �I�d�H�\}}||fS�) Nz/you have to pass server_hostname when using sslz+server_hostname is only meaningful with ssl�1ssl_handshake_timeout is only meaningful with ssl�3path and sock can not be specified at the same timer���Fzno path and sock were specified�.A UNIX Domain Stream Socket was expected, got )rw���)r>����os�fspath�socket�AF_UNIX�SOCK_STREAM�setblockingZsock_connectr&����family�typeZ_create_connection_transport) r ����protocol_factory�pathrt���ru���rv���rw���� transportrX���r���r���r����create_unix_connection����sR������� �� ����z-_UnixSelectorEventLoop.create_unix_connection�d���T)ru����backlogrt���rw���� start_servingc������������� �������s���t�|t�rtd��|d�k r&|s&td��|d�k �rH|d�k r@td��t�|�}t�tjtj�}|d�dkr�z t � t� |�j�r�t�|��W�nB�t k r����Y�n0�tk r��}�zt�d||��W�5�d�}~X�Y�nX�z|�|��W�nl�tk �r0�} �z8|����| jtjk�rd|�d�} ttj| �d��n��W�5�d�} ~ X�Y�n���|������Y�nX�n<|d�k�rZtd ��|jtjk�sv|jtjk�r�td |����|�d��t�|�|g||||�}|�r�|����tjd|�d�I�d�H��|S�) Nz*ssl argument must be an SSLContext or Nonerx���ry���r���)r�����z2Unable to check or remove stale UNIX socket %r: %rzAddress z is already in usez-path was not specified, and no sock specifiedrz���F)�loop)rR����boolr8���r>���r{���r|���r}���r~���r����stat�S_ISSOCK�st_mode�remove�FileNotFoundErrorr?���r ����error�bindr&���rE���Z EADDRINUSEr����r����r����r���ZServerZ_start_servingr����sleep)r ���r����r����ru���r����rt���rw���r�����errrI����msgZserverr���r���r����create_unix_server��sn���� � � �� � �� ���z)_UnixSelectorEventLoop.create_unix_serverc�������������� �������s����z t�j�W�n,�tk r6�}�zt�d��W�5�d�}~X�Y�nX�z|���}W�n2�ttjfk rv�}�zt�d��W�5�d�}~X�Y�nX�zt��|�j }W�n,�t k r��}�zt�d��W�5�d�}~X�Y�nX�|r�|n|} | s�dS�|����} |��| d�||||| d��| I�d�H�S�)Nzos.sendfile() is not availableznot a regular filer���) r{����sendfile�AttributeErrorr����SendfileNotAvailableErrorr=����io�UnsupportedOperation�fstat�st_sizer?���r`����_sock_sendfile_native_impl)r ���ru����file�offset�countrI���r=���r�����fsize� blocksize�futr���r���r����_sock_sendfile_nativeJ��s2���� �����z,_UnixSelectorEventLoop._sock_sendfile_nativec �����������������C���s,��|����} |d�k r|��|��|���r4|��|||��d�S�|rd||�}|dkrd|��|||��|�|��d�S�zt�| |||�} W��nD�ttfk r����|d�kr�|�� ||��|�� | |�j|| ||||||� �Y��nb�tk �rj�}�z�|d�k �r|j t jk�rt|�tk �rtdt j�}||_|}|dk�rBt�d�} |��|||��|�| ��n|��|||��|�|��W�5�d�}~X�Y�n��ttfk �r������Y�n��tk �r��}�z|��|||��|�|��W�5�d�}~X�Y�njX�| dk�r�|��|||��|�|��nD|| 7�}|| 7�}|d�k�r |�� ||��|�� | |�j|| ||||||� �d�S�)Nr���zsocket is not connectedzos.sendfile call failed)r=���� remove_writer� cancelled�_sock_sendfile_update_filepos� set_resultr{���r�����BlockingIOError�InterruptedError�_sock_add_cancellation_callbackZ add_writerr����r?���rE���ZENOTCONNr�����ConnectionError� __cause__r���r����� set_exceptionrd���re���rf���)r ���r����Z registered_fdru���r=���r����r����r����� total_sent�fd�sentrI����new_excr����r���r���r���r����a��s����� ������ � ��� � ������z1_UnixSelectorEventLoop._sock_sendfile_native_implc�����������������C���s���|dkrt��||t�j��d�S��Nr���)r{����lseek�SEEK_SET)r ���r=���r����r����r���r���r���r�������s����z4_UnixSelectorEventLoop._sock_sendfile_update_fileposc��������������������s������fdd�}|��|��d�S�)Nc��������������������s&���|�����r"����}|dkr"���|��d�S�)Nr4���)r����r=���r����)r����r�����r ���ru���r���r����cb���s����zB_UnixSelectorEventLoop._sock_add_cancellation_callback.<locals>.cb)�add_done_callback)r ���r����ru���r����r���r����r���r�������s����z6_UnixSelectorEventLoop._sock_add_cancellation_callback)N)NN)NN)N)N)N)�__name__� __module__�__qualname__r���r&���r3���rK���r1���r*���r9���r[���r]���rp���rc���r����r����r����r����r����r����� __classcell__r���r���r"���r���r���/���sF���- ��� ��� �� ����.�����CFr���c�����������������������s����e�Zd�ZdZd��fdd� Zdd��Zdd��Zd d ��Zdd��Zd d��Z dd��Z dd��Zdd��Ze jfdd�Zddd�Zdd��Zdd��Z���ZS�) rU���i���Nc��������������������s����t����|��||�jd<�||�_||�_|���|�_||�_d|�_d|�_ t �|�j�j}t �|�s�t �|�s�t �|�s�d�|�_d�|�_d�|�_td��t �|�jd��|�j�|�jj|���|�j�|�jj|�j|�j��|d�k r�|�j�tj|d���d�S�)NrW���Fz)Pipe transport is for pipes/sockets only.)r���r����_extra�_loop�_piper=����_fileno� _protocol�_closing�_pausedr{���r����r����r�����S_ISFIFOr�����S_ISCHRr>����set_blocking� call_soon�connection_made�_add_reader�_read_readyr ����_set_result_unless_cancelled)r ���r����rW���rX���rY���rZ����moder"���r���r���r������s:���� ���� ��z_UnixReadPipeTransport.__init__c�����������������C���s����|�j�jg}|�jd�kr |�d��n|�jr0|�d��|�d|�j�����t|�jdd��}|�jd�k r�|d�k r�t� ||�jt j�}|r�|�d��q�|�d��n |�jd�k r�|�d��n |�d��d�d � |��S�) N�closed�closing�fd=� _selector�polling�idle�open�<{}>� )r#���r����r�����appendr����r�����getattrr����r ����_test_selector_event� selectors� EVENT_READ�format�join)r ���rD���r!���r����r���r���r����__repr__���s(���� ��� z_UnixReadPipeTransport.__repr__c�������������� ���C���s����zt��|�j|�j�}W�nD�ttfk r,���Y�n��tk rX�}�z|��|d��W�5�d�}~X�Y�n^X�|rl|�j� |��nJ|�j ���r�t� d|���d|�_|�j �|�j��|�j �|�jj��|�j �|�jd���d�S�)Nz"Fatal read error on pipe transport�%r was closed by peerT)r{����readr�����max_sizer����r����r?����_fatal_errorr����Z data_receivedr����� get_debugr ���rD���r�����_remove_readerr����Zeof_received�_call_connection_lost)r ���r2���rI���r���r���r���r�������s���� z"_UnixReadPipeTransport._read_readyc�����������������C���s>���|�j�s|�jrd�S�d|�_|�j�|�j��|�j���r:t�d|���d�S�)NTz%r pauses reading)r����r����r����r����r����r����r ����debug�r ���r���r���r���� pause_reading���s���� z$_UnixReadPipeTransport.pause_readingc�����������������C���sB���|�j�s|�jsd�S�d|�_|�j�|�j|�j��|�j���r>t�d|���d�S�)NFz%r resumes reading) r����r����r����r����r����r����r����r ���r����r����r���r���r����resume_reading��s���� z%_UnixReadPipeTransport.resume_readingc�����������������C���s ���||�_�d�S�r����r�����r ���rX���r���r���r����set_protocol ��s����z#_UnixReadPipeTransport.set_protocolc�����������������C���s���|�j�S�r���r����r����r���r���r����get_protocol��s����z#_UnixReadPipeTransport.get_protocolc�����������������C���s���|�j�S�r����r����r����r���r���r���� is_closing��s����z!_UnixReadPipeTransport.is_closingc�����������������C���s���|�j�s|��d���d�S�r���)r�����_closer����r���r���r���r&�����s����z_UnixReadPipeTransport.closec�����������������C���s,���|�j�d�k r(|d|���t|�d��|�j�����d�S��Nzunclosed transport r$����r����r-���r&����r ����_warnr���r���r����__del__��s���� z_UnixReadPipeTransport.__del__�Fatal error on pipe transportc�����������������C���sZ���t�|t�r4|jtjkr4|�j���rLtjd|�|dd��n|�j�|||�|�j d���|�� |��d�S��Nz%r: %sT��exc_info)�message� exceptionr����rX���)rR���r?���rE���ZEIOr����r����r ���r�����call_exception_handlerr����r�����r ���rI���r����r���r���r���r������s���� �z#_UnixReadPipeTransport._fatal_errorc�����������������C���s(���d|�_�|�j�|�j��|�j�|�j|��d�S��NT)r����r����r����r����r����r�����r ���rI���r���r���r���r����-��s����z_UnixReadPipeTransport._closec�����������������C���s4���z|�j�|��W�5�|�j�����d�|�_�d�|�_d�|�_X�d�S�r����r����r&���r����r����Zconnection_lostr���r���r���r���r����2��s���� z,_UnixReadPipeTransport._call_connection_lost)NN)r����)r����r����r����r����r���r����r����r����r����r����r����r����r&���r+���r,���r����r����r����r����r����r���r���r"���r���rU������s��� rU���c�����������������������s����e�Zd�Zd%��fdd� Zdd��Zdd��Zdd ��Zd d��Zdd ��Zdd��Z dd��Z dd��Zdd��Zdd��Z dd��Zejfdd�Zdd��Zd&dd �Zd'd!d"�Zd#d$��Z���ZS�)(r\���Nc����������� ���������s����t����||��||�jd<�||�_|���|�_||�_t��|�_d|�_ d|�_ t�|�j�j }t�|�}t�|�}t�|�} |s�|s�| s�d�|�_d�|�_d�|�_td��t�|�jd��|�j�|�jj|���| s�|r�tj�d�s�|�j�|�jj|�j|�j��|d�k r�|�j�tj|d���d�S�)NrW���r���Fz?Pipe transport is only for pipes, sockets and character devicesZaix)r���r���r����r����r=���r����r����� bytearray�_buffer� _conn_lostr����r{���r����r����r����r����r����r����r>���r����r����r����r����r'����platform� startswithr����r����r ���r����) r ���r����rW���rX���rY���rZ���r����Zis_charZis_fifoZ is_socketr"���r���r���r���?��s:���� �� ��z _UnixWritePipeTransport.__init__c�����������������C���s����|�j�jg}|�jd�kr |�d��n|�jr0|�d��|�d|�j�����t|�jdd��}|�jd�k r�|d�k r�t� ||�jt j�}|r�|�d��n |�d��|����}|�d|�����n |�jd�k r�|�d��n |�d��d � d �|��S�)Nr����r����r����r����r����r����zbufsize=r����r����r����)r#���r����r����r����r����r����r����r����r ���r����r�����EVENT_WRITE�get_write_buffer_sizer����r����)r ���rD���r!���r����rl���r���r���r���r����d��s,���� ��� z _UnixWritePipeTransport.__repr__c�����������������C���s ���t�|�j�S�r���)�lenr��r����r���r���r���r��|��s����z-_UnixWritePipeTransport.get_write_buffer_sizec�����������������C���s6���|�j����rt�d|���|�jr*|��t����n|�����d�S�)Nr����)r����r����r ���rD���r��r�����BrokenPipeErrorr����r���r���r���r������s ���� z#_UnixWritePipeTransport._read_readyc�������������� ���C���s4��t�|t�rt|�}|sd�S�|�js&|�jrN|�jtjkr<t�d��|��jd7��_d�S�|�j �szt �|�j|�}W�nt�t tfk r����d}Y�nZ�ttfk r������Y�nB�tk r��}�z$|��jd7��_|��|d��W�Y��d�S�d�}~X�Y�nX�|t|�kr�d�S�|dk�rt|�|d���}|�j�|�j|�j��|��j |7��_ |�����d�S�)Nz=pipe closed by peer or os.write(pipe, data) raised exception.r���r����#Fatal write error on pipe transport)rR���r��� memoryviewr��r����r���Z!LOG_THRESHOLD_FOR_CONNLOST_WRITESr ����warningr��r{����writer����r����r����rd���re���rf���r����r ��r����Z_add_writer�_write_readyZ_maybe_pause_protocol)r ���r2����nrI���r���r���r���r�����s6���� z_UnixWritePipeTransport.writec�������������� ���C���s���zt��|�j|�j�}W�n��ttfk r,���Y�n��ttfk rD�����Y�n��tk r��}�z6|�j� ���|��j d7��_ |�j�|�j��|�� |d��W�5�d�}~X�Y�nfX�|t|�j�kr�|�j� ���|�j�|�j��|�����|�jr�|�j�|�j��|��d���d�S�|dkr�|�jd�|�=�d�S�)Nr���r��r���)r{���r��r����r��r����r����rd���re���rf���r.���r��r�����_remove_writerr����r ��Z_maybe_resume_protocolr����r����r����)r ���r��rI���r���r���r���r�����s*���� z$_UnixWritePipeTransport._write_readyc�����������������C���s���dS�r����r���r����r���r���r���� can_write_eof���s����z%_UnixWritePipeTransport.can_write_eofc�����������������C���s8���|�j�r d�S�d|�_�|�js4|�j�|�j��|�j�|�jd���d�S�r����)r����r��r����r����r����r����r����r����r���r���r���� write_eof���s����z!_UnixWritePipeTransport.write_eofc�����������������C���s ���||�_�d�S�r���r����r����r���r���r���r�������s����z$_UnixWritePipeTransport.set_protocolc�����������������C���s���|�j�S�r���r����r����r���r���r���r�������s����z$_UnixWritePipeTransport.get_protocolc�����������������C���s���|�j�S�r���r����r����r���r���r���r�������s����z"_UnixWritePipeTransport.is_closingc�����������������C���s���|�j�d�k r|�js|�����d�S�r���)r����r����r��r����r���r���r���r&������s����z_UnixWritePipeTransport.closec�����������������C���s,���|�j�d�k r(|d|���t|�d��|�j�����d�S�r����r����r����r���r���r���r�������s���� z_UnixWritePipeTransport.__del__c�����������������C���s���|���d���d�S�r���)r����r����r���r���r����abort���s����z_UnixWritePipeTransport.abortr����c�����������������C���sN���t�|t�r(|�j���r@tjd|�|dd��n|�j�|||�|�jd���|��|��d�S�r����) rR���r?���r����r����r ���r����r����r����r����r����r���r���r���r�������s���� �z$_UnixWritePipeTransport._fatal_errorc�����������������C���sF���d|�_�|�jr|�j�|�j��|�j����|�j�|�j��|�j�|�j|��d�S�r����) r����r��r����r��r����r.���r����r����r����r���r���r���r���r�������s���� z_UnixWritePipeTransport._closec�����������������C���s4���z|�j�|��W�5�|�j�����d�|�_�d�|�_d�|�_X�d�S�r���r��r���r���r���r���r�������s���� z-_UnixWritePipeTransport._call_connection_lost)NN)r����)N)r����r����r����r���r����r��r����r��r��r��r��r����r����r����r&���r+���r,���r����r��r����r����r����r����r���r���r"���r���r\���<��s"���% # r\���c�������������������@���s���e�Zd�Zdd��ZdS�)ra���c����������� ��� ���K���s����d�}|t�jkrt���\}}zPt�j|f||||d|d�|��|�_|d�k rh|����t|���d|d�|�j_ d�}W�5�|d�k r�|����|����X�d�S�)NF)rh���ri���rj���rk����universal_newlinesrl����wb)� buffering) � subprocess�PIPEr}���� socketpairr&����Popen�_procr�����detachri���) r ���rH���rh���ri���rj���rk���rl���rm���Zstdin_wr���r���r����_start��s.���� �������z_UnixSubprocessTransport._startN)r����r����r����r��r���r���r���r���ra��� ��s���ra���c�������������������@���sD���e�Zd�Zdd��Zdd��Zdd��Zdd��Zd d ��Zdd��Zd d��Z dS�)r���c�����������������G���s ���t����d�S�r�����NotImplementedError�r ���rr���rG���rH���r���r���r���rb���9��s���� z&AbstractChildWatcher.add_child_handlerc�����������������C���s ���t����d�S�r���r���r ���rr���r���r���r����remove_child_handlerD��s����z)AbstractChildWatcher.remove_child_handlerc�����������������C���s ���t����d�S�r���r���r ���r����r���r���r����attach_loopL��s����z AbstractChildWatcher.attach_loopc�����������������C���s ���t����d�S�r���r��r����r���r���r���r&���V��s����zAbstractChildWatcher.closec�����������������C���s ���t����d�S�r���r��r����r���r���r���r_���]��s����zAbstractChildWatcher.is_activec�����������������C���s ���t����d�S�r���r��r����r���r���r���� __enter__f��s����zAbstractChildWatcher.__enter__c�����������������C���s ���t����d�S�r���r���r ����a�b�cr���r���r����__exit__l��s����zAbstractChildWatcher.__exit__N) r����r����r����rb���r#��r%��r&���r_���r&��r+��r���r���r���r���r���"��s��� r���c�����������������C���s2���t��|��rt��|���S�t��|��r*t��|��S�|�S�d�S�r���)r{����WIFSIGNALED�WTERMSIG� WIFEXITED�WEXITSTATUS)�statusr���r���r����_compute_returncodeq��s ���� r1��c�������������������@���sD���e�Zd�Zdd��Zdd��Zdd��Zdd��Zd d ��Zdd��Zd d��Z dS�)�BaseChildWatcherc�����������������C���s���d�|�_�i�|�_d�S�r���)r����� _callbacksr����r���r���r���r������s����zBaseChildWatcher.__init__c�����������������C���s���|���d���d�S�r���)r%��r����r���r���r���r&������s����zBaseChildWatcher.closec�����������������C���s���|�j�d�k o|�j����S�r���)r����Z is_runningr����r���r���r���r_������s����zBaseChildWatcher.is_activec�����������������C���s ���t����d�S�r���r��)r ����expected_pidr���r���r����_do_waitpid���s����zBaseChildWatcher._do_waitpidc�����������������C���s ���t����d�S�r���r��r����r���r���r����_do_waitpid_all���s����z BaseChildWatcher._do_waitpid_allc�����������������C���sf���|�j�d�k r$|d�kr$|�jr$t�dt��|�j�d�k r<|�j��tj��||�_�|d�k rb|�tj|�j ��|�� ���d�S�)NzCA loop is being detached from a child watcher with pending handlers)r����r3��r+���r,����RuntimeWarningr*���r;����SIGCHLDrK���� _sig_chldr6��r$��r���r���r���r%�����s����� zBaseChildWatcher.attach_loopc�������������� ���C���s^���z|������W�nL�ttfk r&�����Y�n4�tk rX�}�z|�j�d|d���W�5�d�}~X�Y�nX�d�S�)N�$Unknown exception in SIGCHLD handler)r����r����)r6��rd���re���rf���r����r����r���r���r���r���r9�����s�����zBaseChildWatcher._sig_chldN) r����r����r����r���r&���r_���r5��r6��r%��r9��r���r���r���r���r2����s���r2��c�����������������������sL���e�Zd�Z��fdd�Zdd��Zdd��Zdd��Zd d ��Zdd��Zd d��Z ���Z S�)r���c��������������������s���|�j�����t������d�S�r���)r3��r.���r���r&���r����r"���r���r���r&������s���� zSafeChildWatcher.closec�����������������C���s���|�S�r���r���r����r���r���r���r&�����s����zSafeChildWatcher.__enter__c�����������������C���s���d�S�r���r���r'��r���r���r���r+�����s����zSafeChildWatcher.__exit__c�����������������G���s���||f|�j�|<�|��|��d�S�r���)r3��r5��r!��r���r���r���rb������s����z"SafeChildWatcher.add_child_handlerc�����������������C���s*���z|�j�|=�W�dS��tk r$���Y�dS�X�d�S��NTF�r3��rM���r"��r���r���r���r#�����s ����z%SafeChildWatcher.remove_child_handlerc�����������������C���s���t�|�j�D�]}|��|��q d�S�r����r)���r3��r5��r"��r���r���r���r6�����s����z SafeChildWatcher._do_waitpid_allc�����������������C���s����zt��|t�j�\}}W�n(�tk r>���|}d}t�d|��Y�n.X�|dkrLd�S�t|�}|�j���rlt� d||��z|�j �|�\}}W�n.�tk r����|�j���r�tjd|dd��Y�nX�|||f|����d�S�)N�����8Unknown child process pid %d, will report returncode 255r����$process %s exited with returncode %s�'Child watcher got an unexpected pid: %rTr����) r{����waitpid�WNOHANG�ChildProcessErrorr ���r ��r1��r����r����r����r3���poprM���)r ���r4��rr���r0��rs���rG���rH���r���r���r���r5�����s4����� �� ��zSafeChildWatcher._do_waitpid)r����r����r����r&���r&��r+��rb���r#��r6��r5��r����r���r���r"���r���r������s���r���c�����������������������sP���e�Zd�Z��fdd�Z��fdd�Zdd��Zdd��Zd d ��Zdd��Zd d��Z ���Z S�)r���c��������������������s$���t�������t���|�_i�|�_d|�_d�S�r����)r���r���� threading�Lock�_lock�_zombies�_forksr����r"���r���r���r�����s���� zFastChildWatcher.__init__c��������������������s"���|�j�����|�j����t������d�S�r���)r3��r.���rI��r���r&���r����r"���r���r���r&�����s���� zFastChildWatcher.closec�������������� ���C���s0���|�j�� �|��jd7��_|�W��5�Q�R���S�Q�R�X�d�S�)Nr���)rH��rJ��r����r���r���r���r&����s����zFastChildWatcher.__enter__c�������������� ���C���s^���|�j��B�|��jd8��_|�js"|�js0W�5�Q�R���d�S�t|�j�}|�j����W�5�Q�R�X�t�d|��d�S�)Nr���z5Caught subprocesses termination from unknown pids: %s)rH��rJ��rI��rA���r.���r ���r ��)r ���r(��r)��r*��Zcollateral_victimsr���r���r���r+����s���� �zFastChildWatcher.__exit__c�������������� ���G���sf���|�j��F�z|�j�|�}W�n.�tk rF���||f|�j|<�Y�W�5�Q�R���d�S�X�W�5�Q�R�X�|||f|����d�S�r���)rH��rI��rE��rM���r3��)r ���rr���rG���rH���rs���r���r���r���rb���'��s����z"FastChildWatcher.add_child_handlerc�����������������C���s*���z|�j�|=�W�dS��tk r$���Y�dS�X�d�S�r;��r<��r"��r���r���r���r#��5��s ����z%FastChildWatcher.remove_child_handlerc�������������� ���C���s����zt��dt�j�\}}W�n�tk r,���Y�d�S�X�|dkr:d�S�t|�}|�j���z|�j�|�\}}W�nN�tk r����|�j r�||�j |<�|�j���r�t �d||��Y�W�5�Q�R���q�d�}Y�nX�|�j���r�t �d||��W�5�Q�R�X�|d�kr�t �d||��q�|||f|����q�d�S�)Nr4���r���z,unknown process %s exited with returncode %sr@��z8Caught subprocess termination from unknown pid: %d -> %d)r{���rB��rC��rD��r1��rH��r3��rE��rM���rJ��rI��r����r����r ���r����r ��)r ���rr���r0��rs���rG���rH���r���r���r���r6��<��s@���� �� ����z FastChildWatcher._do_waitpid_all)r����r����r����r���r&���r&��r+��rb���r#��r6��r����r���r���r"���r���r������s��� r���c�������������������@���sd���e�Zd�Zdd��Zdd��Zdd��Zdd��Zd d ��Zdd��Zd d��Z dd��Z dd��Zdd��Zdd��Z dS�)r���c�����������������C���s���i�|�_�d�|�_d�S�r���)r3���_saved_sighandlerr����r���r���r���r���z��s����zMultiLoopChildWatcher.__init__c�����������������C���s ���|�j�d�k S�r���)rK��r����r���r���r���r_���~��s����zMultiLoopChildWatcher.is_activec�����������������C���sP���|�j�����|�jd�k rLt�tj�}||�jkr6t�d��nt�tj|�j��d�|�_d�S�)Nz+SIGCHLD handler was changed by outside code) r3��r.���rK��r;���� getsignalr8��r9��r ���r ��)r ���rQ���r���r���r���r&������s���� zMultiLoopChildWatcher.closec�����������������C���s���|�S�r���r���r����r���r���r���r&�����s����zMultiLoopChildWatcher.__enter__c�����������������C���s���d�S�r���r����r ����exc_type�exc_val�exc_tbr���r���r���r+�����s����zMultiLoopChildWatcher.__exit__c�����������������G���s&���t����}|||f|�j|<�|��|��d�S�r���)r����get_running_loopr3��r5��)r ���rr���rG���rH���r����r���r���r���rb������s����z'MultiLoopChildWatcher.add_child_handlerc�����������������C���s*���z|�j�|=�W�dS��tk r$���Y�dS�X�d�S�r;��r<��r"��r���r���r���r#�����s ����z*MultiLoopChildWatcher.remove_child_handlerc�����������������C���sJ���|�j�d�krFt�tj|�j�|�_�|�j�d�kr8t�d��tj|�_�t�tjd��d�S�)NzaPrevious SIGCHLD handler was set by non-Python code, restore to default handler on watcher close.F)rK��r;���r8��r9��r ���r ��rP���rC���r$��r���r���r���r%�����s���� z!MultiLoopChildWatcher.attach_loopc�����������������C���s���t�|�j�D�]}|��|��q d�S�r���r=��r"��r���r���r���r6�����s����z%MultiLoopChildWatcher._do_waitpid_allc����������� ������C���s����zt��|t�j�\}}W�n,�tk rB���|}d}t�d|��d}Y�nX�|dkrPd�S�t|�}d}z|�j�|�\}}}W�n$�t k r����tjd|dd��Y�nHX�|� ��r�t�d||��n.|r�|���r�t�d ||��|j |||f|����d�S�) Nr>��r?��Fr���TrA��r�����%Loop %r that handles pid %r is closedr@��)r{���rB��rC��rD��r ���r ��r1��r3��rE��rM���� is_closedr����r����rq���) r ���r4��rr���r0��rs���Z debug_logr����rG���rH���r���r���r���r5�����s:����� ����z!MultiLoopChildWatcher._do_waitpidc�������������� ���C���sL���z|������W�n:�ttfk r&�����Y�n"�tk rF���tjddd��Y�nX�d�S�)Nr:��Tr����)r6��rd���re���rf���r ���r ��)r ���r���r���r���r���r���r9�����s����zMultiLoopChildWatcher._sig_chldN)r����r����r����r���r_���r&���r&��r+��rb���r#��r%��r6��r5��r9��r���r���r���r���r���g��s��� %r���c�������������������@���sj���e�Zd�Zdd��Zdd��Zdd��Zdd��Zd d ��Zdd��Ze j fd d�Zdd��Zdd��Z dd��Zdd��ZdS�)r���c�����������������C���s���t��d�|�_i�|�_d�S�r����)� itertoolsr�����_pid_counter�_threadsr����r���r���r���r������s����zThreadedChildWatcher.__init__c�����������������C���s���dS�r����r���r����r���r���r���r_������s����zThreadedChildWatcher.is_activec�����������������C���s���|������d�S�r���)� _join_threadsr����r���r���r���r&������s����zThreadedChildWatcher.closec�����������������C���s.���dd��t�|�j����D��}|D�]}|����qd�S�)Nc�����������������S���s���g�|�]}|����r|js|�qS�r���)�is_alive�daemon��.0�threadr���r���r���� <listcomp>���s������z6ThreadedChildWatcher._join_threads.<locals>.<listcomp>)r)���rV���valuesr����)r ����threadsr\��r���r���r���rW�����s����z"ThreadedChildWatcher._join_threadsc�����������������C���s���|�S�r���r���r����r���r���r���r&�����s����zThreadedChildWatcher.__enter__c�����������������C���s���d�S�r���r���rM��r���r���r���r+����s����zThreadedChildWatcher.__exit__c�����������������C���s6���dd��t�|�j����D��}|r2||�j��d�t|�d��d�S�)Nc�����������������S���s���g�|�]}|����r|�qS�r���)rX��rZ��r���r���r���r]����s�����z0ThreadedChildWatcher.__del__.<locals>.<listcomp>z0 has registered but not finished child processesr$���)r)���rV��r^��r#���r-���)r ���r����r_��r���r���r���r������s�����zThreadedChildWatcher.__del__c�����������������G���sF���t����}tj|�jdt|�j����||||fdd�}||�j|<�|����d�S�)Nzwaitpid-T)�target�namerH���rY��) r���rQ��rF���Threadr5���nextrU��rV���start)r ���rr���rG���rH���r����r\��r���r���r���rb�����s���� � z&ThreadedChildWatcher.add_child_handlerc�����������������C���s���dS�r����r���r"��r���r���r���r#����s����z)ThreadedChildWatcher.remove_child_handlerc�����������������C���s���d�S�r���r���r$��r���r���r���r%����s����z ThreadedChildWatcher.attach_loopc�����������������C���s����zt��|d�\}}W�n(�tk r<���|}d}t�d|��Y�n X�t|�}|���r\t�d||��|���rtt�d||��n|j |||f|����|�j �|��d�S�)Nr���r>��r?��r@��rR��)r{���rB��rD��r ���r ��r1��r����r����rS��rq���rV��rE��)r ���r����r4��rG���rH���rr���r0��rs���r���r���r���r5����s&����� ��z ThreadedChildWatcher._do_waitpidN)r����r����r����r���r_���r&���rW��r&��r+��r+���r,���r����rb���r#��r%��r5��r���r���r���r���r������s��� r���c�����������������������sD���e�Zd�ZeZ��fdd�Zdd��Z��fdd�Zdd��Zd d ��Z ���Z S�)�_UnixDefaultEventLoopPolicyc��������������������s���t�������d�|�_d�S�r���)r���r����_watcherr����r"���r���r���r���=��s���� z$_UnixDefaultEventLoopPolicy.__init__c�������������� ���C���sH���t�j�8�|�jd�kr:t��|�_tt���tj�r:|�j�|�j j ��W�5�Q�R�X�d�S�r���)r���rH��rf��r���rR���rF���current_thread�_MainThreadr%���_localr����r����r���r���r���� _init_watcherA��s���� �z)_UnixDefaultEventLoopPolicy._init_watcherc��������������������s6���t����|��|�jd�k r2tt���tj�r2|�j�|��d�S�r���)r����set_event_looprf��rR���rF��rg��rh��r%��r$��r"���r���r���rk��I��s ���� �z*_UnixDefaultEventLoopPolicy.set_event_loopc�����������������C���s���|�j�d�kr|�����|�j�S�r���)rf��rj��r����r���r���r���r^���W��s���� z-_UnixDefaultEventLoopPolicy.get_child_watcherc�����������������C���s���|�j�d�k r|�j�����||�_�d�S�r���)rf��r&���)r ���rn���r���r���r����set_child_watchera��s���� z-_UnixDefaultEventLoopPolicy.set_child_watcher)r����r����r����r���Z _loop_factoryr���rj��rk��r^���rl��r����r���r���r"���r���re��9��s��� re��)1rE���r����rT��r{���r����r;���r}���r����r��r'���rF��r+�����r���r���r���r���r���r���r ���r ���r���r����logr ����__all__r���ImportErrorr���ZBaseSelectorEventLoopr���Z ReadTransportrU���Z_FlowControlMixinZWriteTransportr\���ZBaseSubprocessTransportra���r���r1��r2��r���r���r���r���ZBaseDefaultEventLoopPolicyre��r���r���r���r���r���r����<module>���s^��� ���� ��NO5JiyY3