File: //lib/tklbam/squid.pyc
�
+��dc @ s� d d l Z d d l Z d d l Z d d l Z d d l Z e j j d d � Z e j j e d � Z
d � Z d � Z d e
f d � � YZ d d d
� � YZ d S( i����Nt TKLBAM_DEPSs /usr/lib/tklbam/depss usr/sbin/tklbam-squidc C sZ t j � } y | j d | f � t SWn, t j k
rU } | j t j k rV t Sn Xd S( Ns 127.0.0.1( t sockett connectt Truet errort errnot ECONNREFUSEDt False( t localportt sockt e( ( s /usr/lib/tklbam/squid.pyt
_is_listening
s c C s1 x* t r, t | � t k r | S| d 7} q Wd S( Ni ( R R R ( t port_from( ( s /usr/lib/tklbam/squid.pyt _find_free_port s t Errorc B s e Z RS( ( t __name__t
__module__( ( ( s /usr/lib/tklbam/squid.pyR s t Squidc B s, e Z d � Z d � Z d � Z d � Z RS( c C s( | | _ | | _ d | _ d | _ d S( N( t
cache_sizet cache_dirt Nonet addresst command( t selfR R ( ( s /usr/lib/tklbam/squid.pyt __init__! s c s� | j t j d <t d � � d � | _ t j t | j | j f d t d t �| _ � f d � } | j j
d d d | � } | j j s� t � � r� | j j
� t d
t | j j � � n d S( Nt TKLBAM_SQUID_CACHE_DIRih� s 127.0.0.1:%dt setpgrpt ptyc s t � � r t } n t } | S( N( R R R ( t continue_waiting( R ( s /usr/lib/tklbam/squid.pyt cb0 s t timeouti
t callbacks %s failed to start
( R t ost environR
R R t Commandt SQUID_BINR R t waitt runningR t terminateR t output( R R t finished( ( R s /usr/lib/tklbam/squid.pyt start( s
c C s, | j r( | j j d d d t j � n d S( Nt gracetimei t sig( R R&