�
�Udac @` sh d d l m Z m Z m Z e Z d d l m Z m Z d e f d � � YZ d e f d � � YZ
d S( i ( t absolute_importt divisiont print_function( t Networkt NetworkCollectort HPUXNetworkc B` s2 e Z d Z d Z d d � Z d � Z d � Z RS( s�
HP-UX-specifig subclass of Network. Defines networking facts:
- default_interface
- interfaces (a list of interface names)
- interface_<name> dictionary of ipv4 address information.
s HP-UXc C` s� i } | j j d � } | d k r( | S| j � } | j | � | j � } | j � | d <x | D] } | | | | <qd W| S( Nt netstatt
interfaces( t modulet get_bin_patht Nonet get_default_interfacest updatet get_interfaces_infot keys( t selft collected_factst
network_factst netstat_patht default_interfaces_factsR t iface( ( sK /usr/lib/python2.7/site-packages/ansible/module_utils/facts/network/hpux.pyt populate s
c C` s� i } | j j d � \ } } } | j � } x^ | D]V } | j � } t | � d k r4 | d d k r� | d | d <| d | d <q� q4 q4 W| S( Ns /usr/bin/netstat -nri i t defaulti t default_interfacet default_gateway( R t run_commandt
splitlinest splitt len( R t default_interfacest rct outt errt linest linet words( ( sK /usr/lib/python2.7/site-packages/ansible/module_utils/facts/network/hpux.pyR 0 s
c C` s� i } | j j d � \ } } } | j � } x� | D]� } | j � } x� t t | � d � D]� } | | d d k r] | | } i | d 6| | <| | d }
i |
d 6| | d <| | d } i | d 6| d
6|
d 6| | d <q] q] Wq4 W| S( Ns /usr/bin/netstat -nii i t lant devicet addresst ipv4i t networkt interface( R R R R t rangeR ( R R R R R R! R"