
­­­­­­­­­­­­­­­­­­
<!DOCTYPE html>
<html>
3
\me                 @   s   d dl mZmZ dd ZdS )    )mask_and_ipv4_to_bcast_addrnet_prefix_to_ipv4_maskc             C   s|  g }xN| j  D ]B}|j }| s|jdr,q|jd d}t|dkrFq|j| qW g }i }x<|D ]4\}}|dkr|r|j| i }|||< qb|||< qbW d}x |j D ]\}}|dkrd}qW |r|j| i }	x*|D ] }
d|
krq|
d jd }d}d|kr
d}d }t|dkr6|d j j }|r6|}|s>qi }i |d< t|d	krz|d
 j j }|dkrz||d< |rx:dD ]2}||
kr|
| j j }|r||d |< qW nx6dD ].}||
kr|
| j j }|r|||< qW d|krLd|krL|d jd\}}}|rLt	||d< ||d< t
|d ||d< d|
krf|
d j |d< d|
kr|
d j |d< d|
kr|
d j j }|jd d}t|d
kr|d jdr|d }|r||d< ||	kr|	| j| q||	|< qW xv|D ]n\}}|jd }|s"q|d j j }|dkrR||	krRd|	| d< |dkrd|krd|	| d< qW |	S )N#   ZifaceFTZinet6r   Zipv6      dhcpstaticZ	bootprotoaddressgatewaynetmask	broadcast/zdns-nameserversz
dns-searchZ	hwaddressZetherauto)r   r	   )r
   r   )r   r
   r   r   )
splitlinesstrip
startswithsplitlenappenditemslower	partitionr   r   update)ZsettingsZentrieslineZsplit_upZifacesZconsumecmdargsZabsorbZreal_ifacesinfoZiface_detailsZuse_ipv6Zdev_nameZdevZ
iface_infoZ
proto_typekvalZaddr_prefixZhw_infoZhw_splitZhw_addr r"   /usr/lib/python3.6/net_util.pytranslate_networkI   s    

















r$   N)Zcloudinit.netr   r   r$   r"   r"   r"   r#   <module>F   s   