+
    ei                     Z    ^ RI Ht ^ RIHt ^ RIHtHt ^ RIHt ^ RI	H
t
  ! R R4      tR# )	    )partial)
itemgetter)AF_INETAF_INET6)succeed)get_active_device_infoc                   :   a  ] tR t^
t o RtRR ltR tR tRtV t	R# )NetworkzShow information about active network interfaces.

@param get_device_info: Optionally, a function that returns information
    about network interfaces.  Defaults to L{get_active_device_info}.
Nc                >    Vf   \        \        RRR7      pWn        R # )NT)extendeddefault_only)r   r   _get_device_info)selfget_device_infos   &&;/usr/lib/python3/dist-packages/landscape/sysinfo/network.py__init__Network.__init__   s#    "%&!O
 !0    c                    Wn         R# )zURegister this plugin with the sysinfo system.

@param sysinfo: The sysinfo registry.
N)_sysinfo)r   sysinfos   &&r   registerNetwork.register   s	    
  r   c                   V P                  4       p\        V\        R4      R7       F  pVR,          pVR,          P                  \        . 4      pVR,          P                  \
        . 4      pV F)  pV P                  P                  RV 2VR,          4       K+  	  V F)  pV P                  P                  RV 2VR,          4       K+  	  K  	  \        R4      # )zt
Gather information about network interfaces and write it to the
sysinfo output.

@return: A succeeded C{Deferred}.
	interface)keyip_addresseszIPv4 address for addrzIPv6 address for N)	r   sortedr   getr   r   r   
add_headerr   )r   device_infoinfor   ipv4_addressesipv6_addressesr   s   &      r   runNetwork.run!   s     ++-;J{,CDD[)I!.155grBN!.155hCN&(('	{3L '
 '(('	{3L ' E t}r   )r   r   )N)
__name__
__module____qualname____firstlineno____doc__r   r   r&   __static_attributes____classdictcell__)__classdict__s   @r   r
   r
   
   s     0  r   r
   N)	functoolsr   operatorr   	netifacesr   r   twisted.internet.deferr   landscape.lib.networkr   r
    r   r   <module>r6      s      ' * 8. .r   