ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     
Afc           @   s   d  Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d Z d   Z	 d d  Z d   Z d   Z d   Z d	   Z d d
 l m Z e	   d S(   sI  A multi-threaded telnet-like server that gives a Python prompt.

This is really a prototype for the same thing in C.

Usage: pysvr.py [port]

For security reasons, it only accepts requests from the current host.
This can still be insecure, but restricts violations from people who
can log in on your machine.  Use with caution!

iNi  c          C   s   yD t  j  t j d d  \ }  } t |  d k rC t  j d  n  Wn  t  j k
 rf } t |  n Xx |  D] \ } } qn W| r y t j | d  } Wq t k
 r } t |  q Xn t	 } t
 |  d  S(   Ni   t    s   Too many arguments.i    (   t   getoptt   syst   argvt   lent   errort   usaget   stringt   atoit
   ValueErrort   PORTt   main_thread(   t   optst   argst   msgt   ot   at   port(    (    s(   /usr/lib64/python2.7/Demo/pysvr/pysvr.pyt   main   s    c         C   s3   t  j t  _ |  r |  GHn  d Gt Gt  j d  d  S(   Ns   
i   (   R   t   stderrt   stdoutt   __doc__t   exit(   R   (    (    s(   /usr/lib64/python2.7/Demo/pysvr/pysvr.pyR   %   s
    c         C   s   t  j  t  j t  j  } | j d |  f  | j d  d G|  Gd GHxm | j   \ } } | d | j   d k r | j   d G| d Gd GHqH n  t j	 t
 | | f  ~ ~ qH Wd  S(   NR    i   s   Listening on ports   ...i    s'   Refusing connection from non-local hostt   .(   t   sockett   AF_INETt   SOCK_STREAMt   bindt   listent   acceptt   getsocknamet   closet   threadt   start_new_threadt   service_thread(   R   t   sockt   connt   addr(    (    s(   /usr/lib64/python2.7/Demo/pysvr/pysvr.pyR   ,   s    
c         C   sl   | \ } } d t  t j    | f G|  j d  } |  j d d  } t | |  d t  t j    Gd  S(   Ns"   Thread %s has connection from %s.
t   rt   wi    s   Thread %s is done.
(   t   strR    t	   get_identt   makefilet   run_interpreter(   R$   R%   t   caddrt   cportt   stdinR   (    (    s(   /usr/lib64/python2.7/Demo/pysvr/pysvr.pyR"   :   s    c         C   s|  i  } y t  t j  Wn d t _ n Xd } x8| j t j  |  j   } | d  d k rh d } n  | rz | rz Pn  | d d k r | d  d } n  | | } y t |  } Wn5 t k
 r } d } t j t | d  d | q3 n X| s q3 n  d } y t
 | |  | |  Wq3 t k
 rf} | rby t  |  } Wn d } n X| j d	 |  n  Pq3 Xq3 W| j d
  d  S(   Ns   >>> R    i   s   is   
s   
t   files   Exit %s
s
   
Goodbye.
(   R(   R   t   ps1t   writet   readlinet   compile_commandt   SyntaxErrort	   tracebackt   print_exceptiont   Nonet   run_commandt
   SystemExit(   R.   R   t   globalst   sourcet   linet   codet   errt   how(    (    s(   /usr/lib64/python2.7/Demo/pysvr/pysvr.pyR+   C   sH    	

	c   	      B   s   e  j e  j e  j f } z | e  _ e  _ | e  _ y |  | UWnl e k
 rk } e | e  j   d  nD e  j   \ } } } | r | j } n  e j | | |  ~ n XWd  | \ e  _ e  _ e  _ Xd  S(   Ni   (	   R   R.   R   R   R9   t   exc_infot   tb_nextR5   R6   (	   R=   R.   R   R:   t   saveR?   t   typet   valuet   tb(    (    s(   /usr/lib64/python2.7/Demo/pysvr/pysvr.pyR8   i   s    	 (   R3   (   R   R   t   osR   R   R    R   R5   R
   R   R7   R   R   R"   R+   R8   R=   R3   (    (    (    s(   /usr/lib64/python2.7/Demo/pysvr/pysvr.pyt   <module>   s   T					&	