
­­­­­­­­­­­­­­­­­­
<!DOCTYPE html>
<html>
3
\me                 @   sN   d dl Z d dlZd dlmZmZ e jeZG dd dejj	j
ZdddZdS )    N)subputilc                   s8   e Zd Zd fdd	Zdd ZdddZd	d
 Z  ZS )RendererNc                s   t t| j  d S )N)superr   __init__)selfconfig)	__class__ /usr/lib/python3.6/netbsd.pyr      s    zRenderer.__init__c             C   s   | j  r*| jdd | jddj| j   xb| jj D ]T\}}t|tr6|jdd |jd }|jd}|rz|d	| 7 }| jd
| | q6W d S )NdhcpcdZYESZdhcpcd_flags Zaddressz	 netmask netmaskmtuz mtu %dZ	ifconfig_)dhcp_interfacesset_rc_config_valuejoinZinterface_configurationsitems
isinstancedictget)r   Zdevice_namevZ
net_configr   r
   r
   r   write_config   s    

zRenderer.write_configFc             C   sF   |st jd d S tjdddgdd | j rBtjdddgdd d S )Nz netbsd generate postcmd disabledZservicenetworkZrestartT)Zcapturer   )LOGdebugr   r   )r   Zrunr
   r
   r   start_services   s    
zRenderer.start_servicesc             C   s   |dkr| j d| d S )Nz0.0.0.0Zdefaultroute)r   )r   r   r   Zgatewayr
   r
   r   	set_route&   s    zRenderer.set_route)N)F)__name__
__module____qualname__r   r   r   r   __classcell__r
   r
   )r	   r   r      s   
	r   c             C   s   t j S )N)r   Z	is_NetBSD)targetr
   r
   r   	available+   s    r#   )N)ZloggingZcloudinit.net.bsdZ	cloudinitr   r   Z	getLoggerr   r   ZnetZbsdZBSDRendererr   r#   r
   r
   r
   r   <module>   s
   
 