| Current Path : /proc/thread-self/root/usr/lib/python3/dist-packages/cloudinit/net/__pycache__/ |
| Current File : //proc/thread-self/root/usr/lib/python3/dist-packages/cloudinit/net/__pycache__/eni.cpython-38.pyc |
U
�AdAV � @ s, d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dlm Z m
Z
d dlmZm
Z
mZ d dlmZ e�e�Zddd d
ddgZd
dddddddgZdddddddddddd d!d"d#d$d%d&d'd(d)d*d+gZd,d-� Zd.d/� ZdAd1d2�Zd3d4� Zd5d6� Zd7d8� Zd9d:� ZG d;d<� d<e
j�ZdBd=d>�ZdCd?d@�Z dS )D� N)�Optional)�log)�subp�util)�ParserError�renderer�subnet_is_ipv6)�NetworkStatezpre-up�upzpost-up�downzpre-downz post-downZ
bridge_ageingZbridge_bridgeprioZ bridge_fdZ
bridge_gcinitZbridge_helloZ
bridge_maxageZbridge_maxwaitZ
bridge_stp�address�netmask� broadcast�network�metric�gatewayZpointtopointZmedia�mtuZhostnameZ
leasehoursZ leasetimeZvendorZclientZbootfile�serverZhwaddrZprovider�frameZnetnumZendpointZlocalZttlc
C s� g }ddddddddd d
g
}|� � D ]v\}}|dkr6q$|dkrRd|d |d f }|r$||kr$t|�tkrtd
�|�}d|kr�|�dd�}|�d�||�� q$t|�S )Nr r
r r r Zpointopointr Zscope�
dns_search�dns_nameserversz%s/%s�prefix� �_�-� {0} {1})�items�type�list�join�replace�append�format�sorted)�iface�subnet�contentZ valid_map�key�value� r) �3/usr/lib/python3/dist-packages/cloudinit/net/eni.py�_iface_add_subnet@ s0 �
r+ c
C s |dkrg S g }dddddddd d
g }ddd
g}ddi}| d
dkrN|� d� | �� D ]�\}}t|�tkrz| | rvdnd}|rV||kr�qV|dkr�|r�||krVt�d| d ||� qV||kr�|D ]} |� d�|�||�| �� q�qVt|�tkr�d� |�}|� d�|�||�|�� qVt
|�S )Nr �controlZ device_idZdriver�index�inet�mode�name�subnetsr �bridge_pathcost�bridge_portprioZbridge_waitport�mac_address� hwaddress)�bond�bridge�
infiniband�vlanZonZoffr zZNetwork config: ignoring %s device-level mtu:%s because ipv4 subnet-level mtu:%s provided.r r )r! r r �bool�LOGZwarningr"