shell bypass 403

Cubjrnet7 Shell


name : _sync.cpython-39.pyc
a

�M�e��@s�ddlZddlZddlZddlZddlZddlZddlZddlZddl	Zddl
ZddlZddl
mZmZmZmZmZeed�r�ejZnejZGdd�de�ZGdd�de�ZGdd	�d	e�ZdS)
�N)�QUIC_MAX_DATAGRAM�BaseQuicConnection�BaseQuicManager�BaseQuicStream�
UnexpectedEOF�PollSelectorcsXeZdZ�fdd�Zdd�Zddd�Zdd	d
�Zdd�Zd
d�Zdd�Z	dd�Z
�ZS)�SyncQuicStreamcs&t��||�t��|_t��|_dS�N)�super�__init__�	threading�	Condition�_wake_up�Lock�_lock)�self�
connection�	stream_id��	__class__��2/usr/lib/python3.9/site-packages/dns/quic/_sync.pyr s
zSyncQuicStream.__init__cCs�|�|�}|j�2|j�|�r.Wd�dS||_Wd�n1sH0Y|j�$|j�|�sntjj	�Wd�n1s�0Yd|_qdS)Nr)
Z_timeout_from_expirationr�_bufferZhaveZ
_expectingr�wait�dns�	exception�Timeout)r�amount�
expiration�timeoutrrr�wait_for%s
$&zSyncQuicStream.wait_forNcCs�|�|�}|�d|�|j�&t�d|j�d��\}Wd�n1sH0Y|�||�|j�|j�|�Wd�S1s�0YdS)N�z!H)Z_expiration_from_timeoutr r�struct�unpackr�get)rrr�sizerrr�receive1s
4zSyncQuicStream.receiveFcCs |�|�}|j�|j||�dSr	)Z_encapsulate�_connection�writeZ
_stream_id)r�datagram�is_end�datarrr�send:s
zSyncQuicStream.sendcCs@|�||�r<|j�|j��Wd�n1s20YdSr	)Z_common_add_inputr�notify)rr+r*rrr�
_add_input>szSyncQuicStream._add_inputcCs2|j�|��Wd�n1s$0YdSr	)rZ_close�rrrr�closeCszSyncQuicStream.closecCs|Sr	rr/rrr�	__enter__GszSyncQuicStream.__enter__cCs<|��|j�|j��Wd�n1s.0YdS�NF)r0rr-)r�exc_type�exc_val�exc_tbrrr�__exit__Js(zSyncQuicStream.__exit__)N)F)�__name__�
__module__�__qualname__rr r&r,r.r0r1r6�
__classcell__rrrrrs
	
rcsleZdZ�fdd�Zdd�Zdd�Zdd�Zd	d
�Zddd
�Zdd�Z	ddd�Z
�fdd�Zdd�Z�Z
S)�SyncQuicConnectioncs�t��||||||�t�|jtjd�|_|jdurrz|j�tj	�
|j|j��Wntyp|j���Yn0|j�
|j�t��\|_|_|j�d�|j�d�t��|_d|_t��|_dS)NrF)r
r�socketZ_afZ
SOCK_DGRAM�_socket�_sourceZbindrZinetZlow_level_address_tuple�	Exceptionr0�connect�_peerZ
socketpair�_send_wakeup�_receive_wakeupZsetblockingr�Event�_handshake_complete�_worker_threadrr)rr�address�port�source�source_portZmanagerrrrrRs"
�

zSyncQuicConnection.__init__cCs|d}|dkrx|d7}z|j�t�}Wnty8YdS0|j�&|j�||jt���Wd�q1sl0YqdS)Nr�
�)	r=�recvr�BlockingIOErrorrr'Zreceive_datagramrA�time)r�countr)rrr�_readeszSyncQuicConnection._readcCs,z|j�d�Wqty$YdS0qdS)N� )rCrMrNr/rrr�
_drain_wakeuppsz SyncQuicConnection._drain_wakeupc	Cs��zDt�}|�|jtj|j�|�|jtj|j�|j�s|�	d�\}}|�
|�}|D]\}}|��qV|j�|�
|�Wd�n1s�0Y|��|j� |j�t���}Wd�n1s�0Y|D].\}}z|j�|�Wq�t�yYq�0q�q2W|j�d|_Wd�n1�s20Y|j��n:|j�d|_Wd�n1�sl0Y|j��0dS)NFT)�_selector_class�registerr=�	selectorsZ
EVENT_READrQrCrS�_doneZ_get_timer_valuesZselectr+rZ
_handle_timer�_handle_eventsr'Zdatagrams_to_sendrOr,rNrE�set)	rZselr�interval�items�key�_Z	datagramsr)rrr�_workerws2

(.&�&zSyncQuicConnection._workercCsL|j�|j��}Wd�n1s&0Y|dur<dSt|tjjj�r�|j�|j�	|j
�}Wd�n1sv0Y|r�|�|j|j
�qt|tjjj�r�|j��qt|tjjj�r�|j�d|_Wd�n1s�0Yqt|tjjj�r|j�|j�	|j
�}Wd�n1�s,0Y|r|�dd�qdS)NT�)rr'Z
next_event�
isinstance�aioquicZquicZeventsZStreamDataReceived�_streamsr$rr.r+Z
end_streamZHandshakeCompletedrErYZConnectionTerminatedrWZStreamReset)rZevent�streamrrrrX�s&(,&.z!SyncQuicConnection._handle_eventsFcCsF|j� |j�|||�Wd�n1s,0Y|j�d�dS)N�)rr'Zsend_stream_datarBr,)rrcr+r*rrrr(�s.zSyncQuicConnection.writecCs(|jr
dStj|jd�|_|j��dS)N)�target)�_closedr�Threadr^rF�startr/rrr�run�szSyncQuicConnection.runNcCsh|j�|�stjj�|j�:|jr&t�|j�	d�}t
||�}||j|<Wd�n1sZ0Y|Sr2)rErrrrrrWrr'Zget_next_available_stream_idrrb)rrrrcrrr�make_stream�s
(zSyncQuicConnection.make_streamcs6|j�t��|�Wd�n1s(0YdSr	)rr
�close_stream)rrrrrrk�szSyncQuicConnection.close_streamcCs�|j�\|jrWd�dS|j�|jd|jd�d|_|j��|j�d�Wd�n1sh0Y|j	�
�dS)NrrLTrd)rrfZ_manager�closedrAr'r0rBr,rF�joinr/rrrr0�s
*zSyncQuicConnection.close)F)N)r7r8r9rrQrSr^rXr(rirjrkr0r:rrrrr;Qs

r;csXeZdZdejdf�fdd�	Zddd�Z�fd	d
�Z�fdd�Zd
d�Z	dd�Z
�ZS)�SyncQuicManagerNcs t��||t|�t��|_dSr	)r
rr;rrr)rZconfZverify_modeZserver_namerrrr�szSyncQuicManager.__init__�UrTcCsP|j�6|�|||||�\}}|r*|��|Wd�S1sB0YdSr	)rZ_connectri)rrGrHrIrJZwant_session_ticketrrhrrrr@�s
�zSyncQuicManager.connectcs8|j�t��||�Wd�n1s*0YdSr	)rr
rl)rrGrHrrrrl�szSyncQuicManager.closedcs:|j� t��|||�Wd�n1s,0YdSr	)rr
�save_session_ticket)rrGrHZticketrrrrp�sz#SyncQuicManager.save_session_ticketcCs|Sr	rr/rrrr1�szSyncQuicManager.__enter__cCs$t|j���}|D]}|��qdSr2)�listZ_connections�valuesr0)rr3r4r5Zconnectionsrrrrr6�s
zSyncQuicManager.__exit__)roNrT)r7r8r9�sslZ
CERT_REQUIREDrr@rlrpr1r6r:rrrrrn�s�
rn)rVr<rsr"rrOZaioquic.quic.configurationraZaioquic.quic.connectionZaioquic.quic.eventsZ
dns.exceptionrZdns.inetZdns.quic._commonrrrrr�hasattrrrTZSelectSelectorrr;rnrrrr�<module>s"	
2|

© 2025 Cubjrnet7