403Webshell
Server IP : 178.105.222.151  /  Your IP : 216.73.216.38
Web Server : nginx/1.28.3
System : Linux MNK 7.0.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Wed Apr 22 16:06:43 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.5.4
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3.14/test/support/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3.14/test/support/__pycache__/asynchat.cpython-314.pyc
+
��3jS-��f�Rt^RIHt^RIHt!RR]P
4t!RR4tRtR#)	a�A class supporting chat-style (command/response) protocols.

This class adds support for 'chat' style protocols - where one side
sends a 'command', and the other sends a response (examples would be
the common internet protocols - smtp, nntp, ftp, etc..).

The handle_read() method looks at the input stream for the current
'terminator' (usually '\r\n' for single-line responses, '\r\n.\r\n'
for multi-line output), calling self.found_terminator() on its
receipt.

for example:
Say you build an async nntp client using this class.  At the start
of the connection, you'll have self.terminator set to '\r\n', in
order to process the single-line greeting.  Just before issuing a
'LIST' command you'll set it to '\r\n.\r\n'.  The output of the LIST
command will be accumulated (using your own 'collect_incoming_data'
method) up to the terminator, and then control will be returned to
you - by calling your self.found_terminator() method.
)�deque)�asyncorec�a�]tRt^;toRtRtRt^tRtRRlt	Rt
RtRtR	t
R
tRtRtR
tRtRtRtRtRtRtRtRtRtVtR#)�
async_chatz�This is an abstract class.  You must derive from this class, and add
the two methods collect_incoming_data() and found_terminator()izlatin-1Nc��RVn.Vn\4Vn\P
P
WV4R#)�N)�ac_in_buffer�incomingr�
producer_fifor�
dispatcher�__init__)�self�sock�maps&&&�,/usr/lib/python3.14/test/support/asynchat.pyr�async_chat.__init__Js5�����
��
�#�W������$�$�T��5rc��\R4h�zmust be implemented in subclass��NotImplementedError�r
�datas&&r�collect_incoming_data� async_chat.collect_incoming_dataX���!�"C�D�Drc�<�VPPV4R#�N)r	�appendrs&&r�_collect_incoming_data�!async_chat._collect_incoming_data[s���
�
���T�"rc�V�RPVP4pVPRV#)r�NNN)�joinr	)r
�ds& r�	_get_data�async_chat._get_data^s%���H�H�T�]�]�#���M�M�!���rc��\R4hrr�r
s&r�found_terminator�async_chat.found_terminatorcrrc���\V\4'd)VP'd\WP4pM(\V\
4'dV^8d\
R4hWnR#)zTSet the input delimiter.

Can be a fixed string of any length, an integer, or None.
z-the number of received bytes must be positiveN)�
isinstance�str�use_encoding�bytes�encoding�int�
ValueError�
terminator)r
�terms&&r�set_terminator�async_chat.set_terminatorfsN��
�d�C� � �T�%6�%6�%6���}�}�-�D�
��c�
"�
"�t�a�x��L�M�M��rc��VP#r)r2r's&r�get_terminator�async_chat.get_terminatorqs�����rc�`�VPVP4p\T\4'd-TP'd\\TP4pTPT,Tn
TP'Ed�\TP4pTP4pT'g%TPTP4RTn
Kd\T\4'd�TpY$8d=TPTP4RTn
TPT,
TnK�TPTPRT4TPTRTn
^TnTP!4EK
\T4pTPP#T4pTR8wdST^8�dTPTPRT4TPYe,RTn
TP!4EK�\%TPT4pT'd=Yb8wd5TPTPRT)4TPT)RTn
R#TPTP4RTn
EKR# \dR#\dTP	4R#i;i)Nr���)�recv�ac_in_buffer_size�BlockingIOError�OSError�handle_errorr+r,r-r.r/r�lenr7rr0r2r(�find�find_prefix_at_end)r
r�lbr2�n�terminator_len�indexs&      r�handle_read�async_chat.handle_readys>��	��9�9�T�3�3�4�D��d�C� � �T�%6�%6�%6���d�m�m�,�D� �-�-��4��������T�&�&�'�B��,�,�.�J���*�*�4�+<�+<�=�$'��!��J��,�,����6��.�.�t�/@�/@�A�(+�D�%�&*�o�o��&:�D�O��.�.�t�/@�/@��!�/D�E�(,�(9�(9�!�"�(=�D�%�&'�D�O��)�)�+�"%�Z����)�)�.�.�z�:���B�;��q�y��2�2�4�3D�3D�V�e�3L�M�(,�(9�(9�%�:N�:O�(P�D�%��)�)�+�/�t�/@�/@�*�M�E�� �;� �6�6�t�7H�7H��5�&�7Q�R�04�0A�0A�5�&�'�0J�D�-���2�2�4�3D�3D�E�,/��)�g ���	���	������	�s�J�J-�J-�J-�,J-c�&�VP4R#r)�
initiate_sendr's&r�handle_write�async_chat.handle_write�s�����rc�&�VP4R#r)�closer's&r�handle_close�async_chat.handle_close�s���
�
�rc��\V\\\34'g\	R\V44hVPp\V4V8�dB\^\V4V4F&pVPPWW2,4K(	MVPPV4VP4R#)z#data argument must be byte-ish (%r)N)r+r.�	bytearray�
memoryview�	TypeError�type�ac_out_buffer_sizer@�ranger
rrJ)r
r�sabs�is&&  r�push�async_chat.push�s����$��	�:� >�?�?��A� ��J�(�
(��&�&���t�9�t���1�c�$�i��.���"�"�)�)�$���.�9�/�
���%�%�d�+����rc�\�VPPV4VP4R#r)r
rrJ)r
�producers&&r�push_with_producer�async_chat.push_with_producer�s"�����!�!�(�+����rc��^#)z4predicate for inclusion in the readable for select()�r's&r�readable�async_chat.readable�s��rc�L�VP;'gVP'*#)z4predicate for inclusion in the writable for select())r
�	connectedr's&r�writable�async_chat.writable�s���!�!�9�9�$�.�.�&8�9rc�<�VPPR4R#)zAautomatically close this channel once the outgoing queue is emptyN)r
rr's&r�close_when_done�async_chat.close_when_done�s�����!�!�$�'rc��VP'd�VP'd�VP^,pV'g$VP^VfVP4R#VPpVRVp\T\4'd(TP'd\Y0P4pTPT4pT'dAT\T48gT\T48dYRTP^&R#TP^R#R#R# \dGTP4pT'dTPP
T4M
TP^EKai;i \dTP4R#i;i)�N)r
rerOrVrT�more�
appendleftr+r,r-r.r/�sendr>r?r@)r
�first�obsr�num_sents&    rrJ�async_chat.initiate_send�sW��� � � �T�^�^�^��&�&�q�)�E���&�&�q�)��=��%�%�'���)�)�C�
��T�c�{���$��$�$��):�):�):��T�=�=�1��
��9�9�T�?��
��c�$�i�'�3��U��+;�,1�)�,<�D�&�&�q�)�
��*�*�1�-��K&4� ���
��z�z�|����&�&�1�1�$�7��*�*�1�-��

���
��!�!�#��
�s*�0D�3E&�"E#�5)E#�"E#�&F�Fc�b�RVnVPRVPP4R#)rr!N)rr	r
�clearr's&r�discard_buffers�async_chat.discard_bufferss(������M�M�!����� � �"r)rr	r
r2)NN)�__name__�
__module__�__qualname__�__firstlineno__�__doc__r<rVr-r/rrrr$r(r4r7rGrKrOrZr^rbrfrirJrv�__static_attributes__�__classdictcell__��
__classdict__s@rrr;s�����F�
����
�L��H�6�E�#��
E�	��F0�P��
���:�(�&�P#�#rrc�0a�]tRtRtoRRltRtRtVtR#)�simple_produceric��WnW nR#r)r�buffer_size)r
rr�s&&&rr�simple_producer.__init__s
���	�&�rc���\VP4VP8�d:VPRVPpVPVPRVnV#VPpRVnV#)Nr)r@rr�)r
�results& rrm�simple_producer.moresb���t�y�y�>�D�,�,�,��Y�Y�0�� 0� 0�1�F��	�	�$�"2�"2�"3�4�D�I��M��Y�Y�F��D�I��Mr)r�rN)i)rxryrzr{rrmr}r~rs@rr�r�s����'��rr�c��\V4^,
pV'd&VPVRV4'gV^,pK-V#)�N)r@�endswith)�haystack�needle�ls&& rrBrB6s6���F��a��A�
�H�%�%�f�R�a�j�1�1�	�Q����HrN)	r|�collectionsr�test.supportrrrr�rBrarr�<module>r�s8��B�*�!�X#��$�$�X#�v��@
r

Youez - 2016 - github.com/yon3zu
LinuXploit