403Webshell
Server IP : 162.144.4.212  /  Your IP : 216.73.216.108
Web Server : Apache
System : Linux gator2125.hostgator.com 5.14.0-162.23.1.9991722448259.nf.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 31 18:11:45 UTC 2024 x86_64
User : cozeellc ( 2980)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /usr/libexec/oracle-cloud-agent/plugins/osms/asyncio/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /usr/libexec/oracle-cloud-agent/plugins/osms/asyncio/windows_events.pyc
a

���d��@s�dZddlZejdkred��ddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddl
mZddl
mZddl
mZdd	l
mZdd
l
mZddl
mZddl
mZdd
l
mZddlmZdZdZdZdZdZdZdZGdd�dej�Z Gdd�dej�Z!Gdd�de!�Z"Gdd�de!�Z#Gdd�de$�Z%Gdd �d ej&�Z'Gd!d"�d"ej(�Z)Gd#d$�d$�Z*Gd%d&�d&ej+�Z,e'Z-Gd'd(�d(ej.�Z/Gd)d*�d*ej.�Z0e0Z1dS)+z.Selector and proactor event loops for Windows.�N�win32z
win32 only�)�events)�base_subprocess)�futures)�
exceptions)�proactor_events)�selector_events)�tasks)�
windows_utils)�logger)�SelectorEventLoop�ProactorEventLoop�IocpProactor�DefaultEventLoopPolicy�WindowsSelectorEventLoopPolicy�WindowsProactorEventLoopPolicy���i�i�g����MbP?g�������?cs`eZdZdZdd��fdd�
Z�fdd�Zdd	�Zd�fd
d�	Z�fdd
�Z�fdd�Z	�Z
S)�_OverlappedFuturez�Subclass of Future which represents an overlapped operation.

    Cancelling it will immediately cancel the overlapped operation.
    N��loopcs&t�j|d�|jr|jd=||_dS�Nr���)�super�__init__�_source_traceback�_ov)�self�ovr��	__class__��./usr/lib64/python3.9/asyncio/windows_events.pyr6sz_OverlappedFuture.__init__csHt���}|jdurD|jjr dnd}|�dd|�d|jjd�d��|S)N�pending�	completedrzoverlapped=<z, �#x�>)r�
_repr_inforr#�insert�address�r�info�staterr!r"r'<s


 z_OverlappedFuture._repr_infoc
Cst|jdurdSz|j��WnLtyh}z4d||d�}|jrH|j|d<|j�|�WYd}~n
d}~00d|_dS)Nz&Cancelling an overlapped future failed��message�	exception�future�source_traceback)r�cancel�OSErrorr�_loop�call_exception_handler)r�exc�contextr!r!r"�_cancel_overlappedCs
�
"z$_OverlappedFuture._cancel_overlappedcs|��t�j|d�S�N)�msg)r8rr2�rr:rr!r"r2Ssz_OverlappedFuture.cancelcst��|�|��dS�N)r�
set_exceptionr8�rr/rr!r"r=Wsz_OverlappedFuture.set_exceptioncst��|�d|_dSr<)r�
set_resultr�r�resultrr!r"r?[sz_OverlappedFuture.set_result)N)�__name__�
__module__�__qualname__�__doc__rr'r8r2r=r?�
__classcell__r!r!rr"r0srcspeZdZdZdd��fdd�
Zdd�Z�fdd	�Zd
d�Zdd
�Zd�fdd�	Z	�fdd�Z
�fdd�Z�ZS)�_BaseWaitHandleFuturez2Subclass of Future which represents a wait handle.Nrcs8t�j|d�|jr|jd=||_||_||_d|_dS)NrrT)rrrr�_handle�_wait_handle�_registered)rr�handle�wait_handlerrr!r"rcsz_BaseWaitHandleFuture.__init__cCst�|jd�tjkS�Nr)�_winapi�WaitForSingleObjectrH�
WAIT_OBJECT_0�rr!r!r"�_pollqs�z_BaseWaitHandleFuture._pollcsdt���}|�d|jd���|jdurB|��r4dnd}|�|�|jdur`|�d|jd���|S)Nzhandle=r%�signaled�waitingzwait_handle=)rr'�appendrHrRrIr*rr!r"r'vs



z _BaseWaitHandleFuture._repr_infocCs
d|_dSr<)r�r�futr!r!r"�_unregister_wait_cb�sz)_BaseWaitHandleFuture._unregister_wait_cbc
Cs�|js
dSd|_|j}d|_zt�|�Wnfty�}zN|jtjkr|d||d�}|jrb|j|d<|j�	|�WYd}~dSWYd}~n
d}~00|�
d�dS�NFz$Failed to unregister the wait handler-r1)rJrI�_overlapped�UnregisterWaitr3�winerror�ERROR_IO_PENDINGrr4r5rX�rrLr6r7r!r!r"�_unregister_wait�s$�
$z&_BaseWaitHandleFuture._unregister_waitcs|��t�j|d�Sr9)r_rr2r;rr!r"r2�sz_BaseWaitHandleFuture.cancelcs|��t��|�dSr<)r_rr=r>rr!r"r=�sz#_BaseWaitHandleFuture.set_exceptioncs|��t��|�dSr<)r_rr?r@rr!r"r?�sz _BaseWaitHandleFuture.set_result)N)
rBrCrDrErrRr'rXr_r2r=r?rFr!r!rr"rG`s
rGcsFeZdZdZdd��fdd�
Zdd�Z�fdd	�Z�fd
d�Z�ZS)�_WaitCancelFuturezoSubclass of Future which represents a wait for the cancellation of a
    _WaitHandleFuture using an event.
    Nrcst�j||||d�d|_dS)Nr)rr�_done_callback)rr�eventrLrrr!r"r�sz_WaitCancelFuture.__init__cCstd��dS)Nz'_WaitCancelFuture must not be cancelled)�RuntimeErrorrQr!r!r"r2�sz_WaitCancelFuture.cancelcs$t��|�|jdur |�|�dSr<)rr?rar@rr!r"r?�s
z_WaitCancelFuture.set_resultcs$t��|�|jdur |�|�dSr<)rr=rar>rr!r"r=�s
z_WaitCancelFuture.set_exception)	rBrCrDrErr2r?r=rFr!r!rr"r`�s
r`cs6eZdZdd��fdd�
Z�fdd�Zdd�Z�ZS)	�_WaitHandleFutureNrcs<t�j||||d�||_d|_t�dddd�|_d|_dS)NrTF)rr�	_proactor�_unregister_proactorrZ�CreateEvent�_event�
_event_fut)rrrKrL�proactorrrr!r"r�s
z_WaitHandleFuture.__init__csF|jdur"t�|j�d|_d|_|j�|j�d|_t��|�dSr<)	rhrN�CloseHandlerire�_unregisterrrrXrVrr!r"rX�s
	z%_WaitHandleFuture._unregister_wait_cbc
Cs�|js
dSd|_|j}d|_zt�||j�Wnfty�}zN|jtjkr�d||d�}|jrf|j|d<|j	�
|�WYd}~dSWYd}~n
d}~00|j�|j|j
�|_dSrY)rJrIrZ�UnregisterWaitExrhr3r\r]rr4r5re�_wait_cancelrXrir^r!r!r"r_�s(�
$
�z"_WaitHandleFuture._unregister_wait)rBrCrDrrXr_rFr!r!rr"rd�srdc@s<eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�ZeZ	dS)
�
PipeServerzXClass representing a pipe server.

    This is much like a bound, listening socket.
    cCs,||_t��|_d|_d|_|�d�|_dS�NT)�_address�weakref�WeakSet�_free_instances�_pipe�_accept_pipe_future�_server_pipe_handle)rr)r!r!r"r�s

zPipeServer.__init__cCs|j|�d�}|_|S)NF)rurw)r�tmpr!r!r"�_get_unconnected_pipesz PipeServer._get_unconnected_pipec
Csr|��rdStjtjB}|r&|tjO}t�|j|tjtjBtj	Btj
tjtjtj
tj�}t�|�}|j�|�|Sr<)�closedrN�PIPE_ACCESS_DUPLEX�FILE_FLAG_OVERLAPPED�FILE_FLAG_FIRST_PIPE_INSTANCE�CreateNamedPiperq�PIPE_TYPE_MESSAGE�PIPE_READMODE_MESSAGE�	PIPE_WAIT�PIPE_UNLIMITED_INSTANCESr�BUFSIZE�NMPWAIT_WAIT_FOREVER�NULL�
PipeHandlert�add)r�first�flags�h�piper!r!r"rw
s"

��
zPipeServer._server_pipe_handlecCs
|jduSr<)rqrQr!r!r"rzszPipeServer.closedcCsR|jdur|j��d|_|jdurN|jD]}|��q*d|_d|_|j��dSr<)rvr2rqrt�closeru�clear)rr�r!r!r"r�"s




zPipeServer.closeN)
rBrCrDrErryrwrzr��__del__r!r!r!r"ro�s
roc@seZdZdZdS)�_WindowsSelectorEventLoopz'Windows version of selector event loop.N)rBrCrDrEr!r!r!r"r�1sr�csHeZdZdZd
�fdd�	Z�fdd�Zdd�Zd	d
�Zddd�Z�Z	S)rz2Windows version of proactor event loop using IOCP.Ncs|durt�}t��|�dSr<)rrr)rrjrr!r"r8szProactorEventLoop.__init__c	s�z^|jdusJ�|�|j�t���W|jdur�|jj}|j��|durX|j�|�d|_n8|jdur�|jj}|j��|dur�|j�|�d|_0dSr<)	�_self_reading_future�	call_soon�_loop_self_readingr�run_foreverrr2rerl�rrrr!r"r�=s 

�

zProactorEventLoop.run_foreverc�s8|j�|�}|IdH}|�}|j||d|id�}||fS)N�addr��extra)re�connect_pipe�_make_duplex_pipe_transport)r�protocol_factoryr)�fr��protocol�transr!r!r"�create_pipe_connectionPs
�z(ProactorEventLoop.create_pipe_connectionc�s.t���d�����fdd�	������gS)Nc
sd}zn|rN|��}�j�|����r4|��WdS��}�j||d�id����}|durdWdS�j�|�}Wn�t	y�}zN|r�|�
�dkr���d||d��|��n�jr�t
jd|dd�WYd}~n8d}~0tjy�|r�|��Yn0|�_|���dS)	Nr�r�rzPipe accept failed)r.r/r�zAccept pipe failed on pipe %rT)�exc_info)rArt�discardrzr�r�ryre�accept_piper3�filenor5�_debugr�warningr�CancelledErrorrv�add_done_callback)r�r�r�r6�r)�loop_accept_piper�r�serverr!r"r�[sB
��
�z>ProactorEventLoop.start_serving_pipe.<locals>.loop_accept_pipe)N)ror�)rr�r)r!r�r"�start_serving_pipeXs(
z$ProactorEventLoop.start_serving_pipec		�s�|��}
t||||||||f|
|d�|	��}z|
IdHWn@ttfyR�Yn*tyz|��|��IdH�Yn0|S)N)�waiterr�)�
create_future�_WindowsSubprocessTransport�
SystemExit�KeyboardInterrupt�
BaseExceptionr��_wait)rr��args�shell�stdin�stdout�stderr�bufsizer��kwargsr��transpr!r!r"�_make_subprocess_transport�s"
���z,ProactorEventLoop._make_subprocess_transport)N)N)
rBrCrDrErr�r�r�r�rFr!r!rr"r5s0�rc@s�eZdZdZd;dd�Zdd�Zdd�Zd	d
�Zd<dd
�Zdd�Z	d=dd�Z
d>dd�Zd?dd�Zd@dd�Z
dAdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�ZdBd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�ZdCd3d4�Zd5d6�Zd7d8�Zd9d:�ZdS)Drz#Proactor implementation using IOCP.rcCsDd|_g|_t�tjtd|�|_i|_t�	�|_
g|_t�	�|_dSrM)
r4�_resultsrZ�CreateIoCompletionPort�INVALID_HANDLE_VALUEr��_iocp�_cacherrrsrJ�
_unregistered�_stopped_serving)r�concurrencyr!r!r"r�s
�
zIocpProactor.__init__cCs|jdurtd��dS)NzIocpProactor is closed)r�rcrQr!r!r"�
_check_closed�s
zIocpProactor._check_closedcCsFdt|j�dt|j�g}|jdur0|�d�d|jjd�|�fS)Nzoverlapped#=%sz
result#=%srzz<%s %s>� )�lenr�r�r�rUr rB�join)rr+r!r!r"�__repr__�s�

zIocpProactor.__repr__cCs
||_dSr<)r4)rrr!r!r"�set_loop�szIocpProactor.set_loopNcCs |js|�|�|j}g|_|Sr<)r�rR)r�timeoutrxr!r!r"�select�s

zIocpProactor.selectcCs|j��}|�|�|Sr<)r4r�r?)r�valuerWr!r!r"�_result�s

zIocpProactor._resultrcCs||�|�t�t�}z4t|tj�r6|�|��||�n|�|��|�Wnt	yd|�
d�YS0dd�}|�|||�S)N�c
SsTz
|��WStyN}z,|jtjtjfvr8t|j��n�WYd}~n
d}~00dSr<��	getresultr3r\rZ�ERROR_NETNAME_DELETED�ERROR_OPERATION_ABORTED�ConnectionResetErrorr��r��keyrr6r!r!r"�finish_recv�s
�z&IocpProactor.recv.<locals>.finish_recv)�_register_with_iocprZ�
Overlappedr��
isinstance�socket�WSARecvr��ReadFile�BrokenPipeErrorr��	_register�r�conn�nbytesr�rr�r!r!r"�recv�s


zIocpProactor.recvcCs||�|�t�t�}z4t|tj�r6|�|��||�n|�|��|�Wnt	yd|�
d�YS0dd�}|�|||�S)Nrc
SsTz
|��WStyN}z,|jtjtjfvr8t|j��n�WYd}~n
d}~00dSr<r�r�r!r!r"r��s
�z+IocpProactor.recv_into.<locals>.finish_recv)r�rZr�r�r�r��WSARecvIntor��ReadFileIntor�r�r�)rr��bufr�rr�r!r!r"�	recv_into�s


zIocpProactor.recv_intocCs^|�|�t�t�}z|�|��||�WntyF|�d�YS0dd�}|�|||�S)N)r�Nc
SsTz
|��WStyN}z,|jtjtjfvr8t|j��n�WYd}~n
d}~00dSr<r�r�r!r!r"r��s
�z*IocpProactor.recvfrom.<locals>.finish_recv)	r�rZr�r��WSARecvFromr�r�r�r�r�r!r!r"�recvfrom�s


zIocpProactor.recvfromcCs>|�|�t�t�}|�|��|||�dd�}|�|||�S)Nc
SsTz
|��WStyN}z,|jtjtjfvr8t|j��n�WYd}~n
d}~00dSr<r�r�r!r!r"�finish_send	s
�z(IocpProactor.sendto.<locals>.finish_send)r�rZr�r��	WSASendTor�r�)rr�r�r�r�rr�r!r!r"�sendtos



zIocpProactor.sendtocCsZ|�|�t�t�}t|tj�r4|�|��||�n|�|��|�dd�}|�	|||�S)Nc
SsTz
|��WStyN}z,|jtjtjfvr8t|j��n�WYd}~n
d}~00dSr<r�r�r!r!r"r�s
�z&IocpProactor.send.<locals>.finish_send)
r�rZr�r�r�r��WSASendr��	WriteFiler�)rr�r�r�rr�r!r!r"�sends


zIocpProactor.sendcsv|���|��j��t�t�}|����������fdd�}dd�}|�|�|�}||��}t	j
||jd�|S)NcsD|��t�d����}��tjtj|���	��
������fS)Nz@P)r��struct�packr��
setsockoptr��
SOL_SOCKETrZ�SO_UPDATE_ACCEPT_CONTEXT�
settimeout�
gettimeout�getpeername)r�r�rr��r��listenerr!r"�
finish_accept/s�z*IocpProactor.accept.<locals>.finish_acceptc�s2z|IdHWntjy,|���Yn0dSr<)rr�r�)r0r�r!r!r"�accept_coro8s
z(IocpProactor.accept.<locals>.accept_coror)r��_get_accept_socket�familyrZr�r��AcceptExr�r�r
�
ensure_futurer4)rr�rr�r�r0�coror!r�r"�accept)s

	
zIocpProactor.acceptc
s��jtjkr4t����|�|j��}|�d�|S|�	��zt�
����j�WnDty�}z,|j
tjkrr����ddkr��WYd}~n
d}~00t�t�}|����|��fdd�}|�|�|�S)Nrrcs|����tjtjd��SrM)r�r�r�r�rZ�SO_UPDATE_CONNECT_CONTEXT�r�r�r�r�r!r"�finish_connect[s
�z,IocpProactor.connect.<locals>.finish_connect)�typer��
SOCK_DGRAMrZ�
WSAConnectr�r4r�r?r��	BindLocalr�r3r\�errno�	WSAEINVAL�getsocknamer�r��	ConnectExr�)rr�r)rW�errr!rr"�connectEs"



zIocpProactor.connectc		Csb|�|�t�t�}|d@}|d?d@}|�|��t�|���|||dd�dd�}|�|||�S)Nr� rc
SsTz
|��WStyN}z,|jtjtjfvr8t|j��n�WYd}~n
d}~00dSr<r�r�r!r!r"�finish_sendfilens
�z.IocpProactor.sendfile.<locals>.finish_sendfile)	r�rZr�r��TransmitFiler��msvcrt�
get_osfhandler�)	r�sock�file�offset�countr�
offset_low�offset_highrr!r!r"�sendfileds


�	zIocpProactor.sendfilecsJ|���t�t�}|�����}|r0|���S�fdd�}|�|�|�S)Ncs|���Sr<)r�r�r�r!r"�finish_accept_pipe�sz4IocpProactor.accept_pipe.<locals>.finish_accept_pipe)r�rZr�r��ConnectNamedPiper�r�r�)rr�r�	connectedrr!rr"r�ys


zIocpProactor.accept_pipec
�stt}zt�|�}WqjWn2tyH}z|jtjkr4�WYd}~n
d}~00t|dt�}t�	|�IdHqt
�|�S)N�)�CONNECT_PIPE_INIT_DELAYrZ�ConnectPiper3r\�ERROR_PIPE_BUSY�min�CONNECT_PIPE_MAX_DELAYr
�sleeprr�)rr)�delayrKr6r!r!r"r��s
zIocpProactor.connect_pipecCs|�||d�S)z�Wait for a handle.

        Return a Future object. The result of the future is True if the wait
        completed, or False if the wait did not complete (on timeout).
        F)�_wait_for_handle)rrKr�r!r!r"�wait_for_handle�szIocpProactor.wait_for_handlecCs|�|dd�}||_|Srp)r&ra)rrb�
done_callbackrWr!r!r"rn�szIocpProactor._wait_cancelcs�|��|durtj}nt�|d�}t�t�}t�||j	|j
|�}|r\t||||jd��nt
|||||jd���jr~�jd=�fdd�}�|d|f|j|j
<�S)N�@�@rrcs���Sr<)rRr�r�r!r"�finish_wait_for_handle�sz=IocpProactor._wait_for_handle.<locals>.finish_wait_for_handler)r�rN�INFINITE�math�ceilrZr�r��RegisterWaitWithQueuer�r)r`r4rdrr�)rrKr��
_is_cancel�msrrLr+r!r*r"r&�s$
�
�	zIocpProactor._wait_for_handlecCs0||jvr,|j�|�t�|��|jdd�dSrM)rJr�rZr�r�r��r�objr!r!r"r��s
z IocpProactor._register_with_iocpc
Cs�|��t||jd�}|jr$|jd=|jstz|dd|�}Wn.tyh}z|�|�WYd}~nd}~00|�|�||||f|j|j	<|Sr)
r�rr4rr#r3r=r?r�r))rrr3�callbackr�r�rr!r!r"r��s 

zIocpProactor._registercCs|��|j�|�dS)a
Unregister an overlapped object.

        Call this method when its future has been cancelled. The event can
        already be signalled (pending in the proactor event queue). It is also
        safe if the event is never signalled (because it was cancelled).
        N)r�r�rUr�r!r!r"rl�szIocpProactor._unregistercCst�|�}|�d�|SrM)r�r�)rr��sr!r!r"r�s

zIocpProactor._get_accept_socketcCs�|durt}n0|dkr td��nt�|d�}|tkr>td��t�|j|�}|durX�qZd}|\}}}}z|j�|�\}}	}
}WnVt	y�|j
��r�|j
�dd||||fd��|dtj
fvr�t�|�Yq>Yn0|
|jvr�|��q>|��s>z||||	�}Wn<t�y@}
z"|�|
�|j�|�WYd}
~
q>d}
~
00|�|�|j�|�q>|jD]}	|j�|	jd��q`|j��dS)Nrznegative timeoutr)ztimeout too bigz8GetQueuedCompletionStatus() returned an unexpected eventz)err=%s transferred=%s key=%#x address=%#x)r.�status)r,�
ValueErrorr-r.rZ�GetQueuedCompletionStatusr�r��pop�KeyErrorr4�	get_debugr5r�rNrkr�r2�doner3r=r�rUr?r�r)r�)rr�r1r6�err�transferredr�r)r�rr3r4r�rr!r!r"rRsL


��	




"

zIocpProactor._pollcCs|j�|�dSr<)r�r�r2r!r!r"�
_stop_serving>szIocpProactor._stop_servingcCs|jdurdSt|j���D]�\}\}}}}|��r6qt|t�rBqz|��Wqty�}z>|j	dur�d||d�}|j
r�|j
|d<|j	�|�WYd}~qd}~00qd}t�
�}	|	|}
|jr�|
t�
�kr�t�d|t�
�|	�t�
�|}
|�|�q�g|_t�|j�d|_dS)NzCancelling a future failedr-r1g�?z,%r is running after closing for %.1f seconds)r��listr��items�	cancelledr�r`r2r3r4rr5�time�	monotonicr�debugrRr�rNrk)rr)rWrr3r4r6r7�
msg_update�
start_time�next_msgr!r!r"r�Ds>


�
$�zIocpProactor.closecCs|��dSr<)r�rQr!r!r"r�sszIocpProactor.__del__)r)N)r)r)r)rN)r)N)N)rBrCrDrErr�r�r�r�r�r�r�r�r�r�r�r
rr�r�r'rnr&r�r�rlr�rRr?r�r�r!r!r!r"r�s8








"
 

7/rc@seZdZdd�ZdS)r�c
sPtj|f|||||d�|���_�fdd�}�jj�t�jj��}	|	�|�dS)N)r�r�r�r�r�cs�j��}��|�dSr<)�_proc�poll�_process_exited)r��
returncoderQr!r"r4~s
z4_WindowsSubprocessTransport._start.<locals>.callback)	r�PopenrIr4rer'�intrHr�)
rr�r�r�r�r�r�r�r4r�r!rQr"�_startys���z"_WindowsSubprocessTransport._startN)rBrCrDrOr!r!r!r"r�wsr�c@seZdZeZdS)rN)rBrCrDr
�
_loop_factoryr!r!r!r"r�src@seZdZeZdS)rN)rBrCrDrrPr!r!r!r"r�sr)2rE�sys�platform�ImportErrorrZrNrr-rr�r�rCrr�rrrrrr	r
r�logr�__all__r�r,�ERROR_CONNECTION_REFUSED�ERROR_CONNECTION_ABORTEDrr#�FuturerrGr`rd�objectro�BaseSelectorEventLoopr��BaseProactorEventLooprr�BaseSubprocessTransportr�r
�BaseDefaultEventLoopPolicyrrrr!r!r!r"�<module>sX
0J4;e`

Youez - 2016 - github.com/yon3zu
LinuXploit