File: //snap/core18/2956/usr/lib/python3/dist-packages/cloudinit/net/__pycache__/freebsd.cpython-36.pyc
3
�Ad� � @ sR d dl Zd dlmZ d dlmZmZ eje�ZG dd� dej j
j�Zddd�Z
dS ) � N)�log)�subp�utilc s@ e Zd Zd
� fdd� Zdd� Zdd� Zdd d
�Zdd� Z� ZS )�RendererNc s d| _ tt| �j� d S )Nr )�
_route_cpt�superr �__init__)�self�config)� __class__� �7/usr/lib/python3/dist-packages/cloudinit/net/freebsd.pyr s zRenderer.__init__c C s | j d| |� d S )Nzifconfig_%s_name)�set_rc_config_value)r Zcur_name�device_namer r r
�rename_interface s zRenderer.rename_interfacec C s� xp| j j� D ]b\}}t|t�rRd|jd�|jd�f }|jd�}|r^|d| 7 }n|dkr^d}| jd| |� qW xb| jj� D ]T\}}t|t�r�d|jd�|jd �f }|jd�}|r�|d| 7 }| jd
| |� q~W d S )Nzinet %s netmask %sZaddress�netmask�mtuz mtu %dZDHCPZ ifconfig_zinet6 %s/%d�prefixzifconfig_%s_ipv6)Zinterface_configurations�items�
isinstance�dict�getr Zinterface_configurations_ipv6)r r �vZ
net_configr r r r
�write_config s*
zRenderer.write_configFc C s� |st jd� d S x,| j� D ] }tjddd|gddgdd� qW tjdd d
gdd� tjddd
gdddgd
� x,| j� D ] }tjddd|gddgdd� qxW d S )Nz!freebsd generate postcmd disabledZserviceZdhclient�stopr � T)�rcs�captureZnetifZrestart)r Zrouting)r r �start)�LOG�debugZdhcp_interfacesr )r ZrunZdhcp_interfacer r r
�start_services- s
zRenderer.start_servicesc C sb |dkr| j d|� nH|dkr,| j d|� n2d| j }d|||f }| j ||� | jd7 _d S )Nz0.0.0.0Z
defaultrouterz::Zipv6_defaultrouterzroute_net%dz-route %s/%s %sr )r r )r Znetworkr ZgatewayZ
route_nameZ route_cmdr r r
� set_routeK s
zRenderer.set_route)N)F) �__name__�
__module__�__qualname__r r r r! r"