
    /I_                        S SK r S SKr S SKJrJr  S SKJr  \R                  " 5          S SKJs  Jr  S SKJr  \\l        S SKJrJr  S SKJr  S SKJrJr  S	 rS
 rS rS r \!S:X  a   \RD                  " \ " 5       5        gg! \ a    S SKJrJr  S SK	Jr   Nf = f! \ a6    S SKJr  \" S5      R                  \l        S SKJrJr  S SKJr  S SKJrJr   Nf = f! \# a)    \RD                  " \R(                  RH                  5         gf = f)    N)
LogManagerroot_logger)Status)__version__)ExitWithStatusExitWithStatusAndError)Client)ArgvParseHelpArgvParseError__init__c                       [        [        R                  5       n SU R                  5       ;   sSSS5        $ ! , (       d  f       g= f! [         a     gf = f)z<Check ifupdown2 config to see if we should start the client zuse_daemon=yesNF)openconfigIFUPDOWN2_CONF_PATHread	Exception)fs     /usr/share/ifupdown2/__main__.pydaemon_moder   =   sB    &,,-#qvvx/ .-- s+   A	 8	A	 
AA	 A	 	
AAc                      [        [        R                  5      R                  5       n U $ ! [         a7  n[
        R                  " UR                  5        UR                  n  S nAU $ S nAf[         a  nUR                  n  S nAU $ S nAff = f)N)
r	   sysargvrunr   r   errormessagestatusr   )r   es     r   clientr   F   sr    !%%' M " !))$ M  Ms    '+ 
B,A''B4BBc                     [         R                  S   R                  S5      (       d9  [        R                  " 5       S:w  a   [         R
                  R                  S5        g SSKJn   SSK	J
nJn  U " S[        R                  " 5       S9n UR                  [         R                  5        [         R"                  " 5       R%                  UR&                  5         UR9                  5       n UR;                  5       (       a  UR#                  5       R=                  5         [         R"                  " 5       R                  S	U-  5        U$ ! [         a    SSKJn   SSKJ
nJn   Nf = f! [(         a_  n[         R"                  " 5       R+                  5       R-                  [/        U5      5        [0        R2                  R4                  s S nA$ S nAf[6         a     gf = f! U a    [0        R2                  R>                  n Nf = f!  UR;                  5       (       a  UR#                  5       R=                  5         f f ! U a    [0        R2                  R>                  n f f = f= f)
Nr   queryz!must be root to run this command
   )	Ifupdown2)NetlinkListenerWithCache+NetlinkListenerWithCacheErrorNotInitializedF)daemonuidzexit status %s) r   r   endswithosgeteuidstderrwriteifupdown2.ifupdown.mainr"   ifupdown2.lib.nlcacher#   r$   r   ifupdown.mainlib.nlcache
parse_argvr   get_instancestart_standalone_loggingargsr   r   r   strr   r	   STATUS_ARGV_ERRORr
   mainis_initcleanupSTATUS_NLERROR)r"   r#   r$   	ifupdown2r   r   s         r   stand_aloner;   Q   s   88A;((RZZ\Q->

=>f5o BJJL9I	SXX&!::9>>J2!	2'//11(557??A ##$4v$=>M/  f+eef  /!--/55c!f=}}...   ; 	2]]11F	2	2'//11(557??A 2: 	2]]11F	2sz   "E AE$ H *3G E! E!$
G.AGGGG G>=G>I3H86I8 IIIIc                      [        5       (       a
  [        5       $ [        5       $ ! [         a    [        R
                  R                  s $ [         a    [        R
                  R                  s $ [         aF  n [        R                  " S[        U 5      -  5        [        R
                  R                  s S n A $ S n A ff = f)Nzmain: %s)r   r   r;   r
   r   r	   STATUS_SUCCESSKeyboardInterruptSTATUS_KEYBOARD_INTERRUPTr   r   	exceptionr4   STATUS_EXCEPTION_MAIN)r   s    r   r6   r6   r   s    3==8O=  ,}}+++ 7}}666 3j3q612}}2223s+   % 	% $B?#B?0	B?9;B:4B?:B?__main__)%r(   r   ifupdown2.lib.logr   r   ifupdown2.lib.statusr   r   lib.log
lib.statusr1   ifupdown2.ifupdown.configifupdownr   r:   r   ifupdown2.lib.exceptionsr   r   ifupdown2.ifupdown.clientr	   ifupdown2.ifupdown.exceptionsr
   r   ifupdown.config
__import__lib.exceptionsifupdown.clientifupdown.exceptionsr   r   r;   r6   __name__exitr>   r?        r   <module>rU      s   4 
 
"9+    B..%$FO0KB3 z: C  "/!"$  B$#J/;;FE&AABd  :889:s4   B ,B )C BB9CC,D
	D
