shell bypass 403
l
��bc @ s� d Z d d l Z d d l Z d d l m Z d d d � Z Gd � d e j � Z Gd � d � Z Gd � d
� Z
d � Z d S( u� 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.
i N( u dequec C sN t | � | d k r d } n | d k r: t | � } n | | | � } | S( Ni ( u
memoryviewu Noneu len( u obju startu stopu x( ( u/ /usr/local/python-3.2/lib/python3.2/asynchat.pyu buffer4 s
c B s� | Ee Z d Z d Z d Z d Z d Z d d d � Z d � Z d � Z
d � Z d � Z d � Z
d
� Z d � Z d � Z d
� Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d S( u� This is an abstract class. You must derive from this class, and add
the two methods collect_incoming_data() and found_terminator()i i u latin1c C s8 d | _ g | _ t � | _ t j j | | | � d S( Ns ( u ac_in_bufferu incomingu dequeu
producer_fifou asyncoreu
dispatcheru __init__( u selfu socku map( ( u/ /usr/local/python-3.2/lib/python3.2/asynchat.pyu __init__P s c C s t d � � d S( Nu must be implemented in subclass( u NotImplementedError( u selfu data( ( u/ /usr/local/python-3.2/lib/python3.2/asynchat.pyu collect_incoming_dataa s c C s | j j | � d S( N( u incomingu append( u selfu data( ( u/ /usr/local/python-3.2/lib/python3.2/asynchat.pyu _collect_incoming_datad s c C s&