File "bsd.cpython-36.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/usr/lib/python3.6/site-packages/cloudinit/net/__pycache__/bsd.cpython-36.pyc
File size: 5.74 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit

3

\me!@sddlZddlZddlmZddlmZmZmZddlm	Z	ddl
mZddlm
Z
ddlmZejeZGdd	d	e
jZdS)
N)Optional)netsubputil)	bsd_utils)
ResolvConf)renderer)NetworkStatec@seZdZdZdZdZdZddZddZdd	d
Z	ddZ
d
dZddZd e
eeddddZddZd!ddZd"ddZddZddZdS)#BSDRendererzetc/resolv.confzetc/rc.confcCs"tj|j|j}tj||ddS)N)fn)rtarget_pathtarget
rc_conf_fnrget_rc_config_value)selfkeyrr/usr/lib/python3.6/bsd.pyrszBSDRenderer.get_rc_config_valuecCs$tj|j|j}tj|||ddS)N)r)rr
rrrset_rc_config_value)rrvaluerrrrrszBSDRenderer.set_rc_config_valueNcCs,|si}d|_i|_i|_|jdd|_dS)NZpostcmdsT)rinterface_configurationsinterface_configurations_ipv6get	_postcmds)rconfigrrr__init__szBSDRenderer.__init__cCstj}x|jD]}|jd}|jd}|r@tjd|r@q||krVtjd|nd|r|r||}||krtjd||y|j||Wqt	k
rtj
d|}YqXn||}tjd|x:|jdgD](}|jd	d
krZ|jdstjd|jd
qtjd||jd
|jd|jd
|jd|jdpL|jdd|j|<q|jd	dkr|jdstjd|jd
qtjd||jd
|jd|jd
|jd|jdp|jdd|j
|<q|jd	dks|jd	dkrd|j|<qWqWdS)NnameZmac_addressz^lo\d+$z"Cannot find any device with MAC %sz,netif service will rename interface %s to %sz.Interface renaming is not supported on this OSzConfiguring interface %ssubnetstypestaticnetmaskz+Skipping IP %s, because there is no netmaskaddresszConfiguring dev %s with %s / %smtu)r"r!r#static6prefixz*Skipping IP %s, because there is no prefix)r"r%r#ZdhcpZdhcp4DHCP)rZget_interfaces_by_maciter_interfacesrrematchLOGinforename_interfaceNotImplementedErrorerrordebugrr)rsettingsZ
ifname_by_mac	interfacedevice_nameZ
device_maccur_namesubnetrrr_ifconfig_entries&sn

""zBSDRenderer._ifconfig_entriesc
Cs2t|j}x|jD]}|jdg}x|D]}|jddkrr|jd}|rt|jddkr|jdd|dnD|jdd	kr,|jd}|rt|jd
dkr|jdd
|dnq,||jdg7}q,WqWx^|D]V}|jd}|stjdq|jdr|jdn|jd}	|jd}|j	||	|qWdS)Nrrr gateway.z0.0.0.0)networkr!r6r$:z::0)r9r%r6routesr9zSkipping a bad route entryr!r%)
listZiter_routesr'rlensplitappendr*r/	set_route)
rr0r=r1rr4r6Zrouter9r!rrr_route_entriesrs:







zBSDRenderer._route_entriesc	Csv|j}|j}xR|jD]F}x@|jdgD]0}d|krB|j|dd|kr(|j|dq(WqWy&ttjtj	|j
|j}|jWn>t
k
rtjtdtj	|j
|jtd}|jYnXxDt|D]8}y|j|Wqtk
rtjtd|YqXqWxFt|D]:}y|j|Wn$tk
rLtjtd|YnXqWtjtj	|j
|jt|ddS)	Nrdns_nameserversZ
dns_searchz&Failed to parse %s, use new empty filerzFailed to add nameserver %szFailed to add search domain %si)rDZdns_searchdomainsr'rextendrrZ	load_filerr
rresolv_conf_fnparseIOErrorZlogexcr*setZadd_nameserver
ValueErrorZadd_search_domainZ
write_filestr)	rr0ZnameserversZ
searchdomainsr1r4Z
resolvconfZserverZdomainrrr
_resolve_confsDzBSDRenderer._resolve_conf)
network_state	templatesreturncCsH|r
||_|j|d|j|d|j|d|j|j|jddS)N)r0)run)rr5rCrLwrite_configstart_servicesr)rrMrNrrrrrender_network_statesz BSDRenderer.render_network_statecCs|jj}dd|DS)NcSsg|]\}}|dkr|qS)r&r).0kvrrr
<listcomp>sz/BSDRenderer.dhcp_interfaces.<locals>.<listcomp>)ritems)rZicrrrdhcp_interfacesszBSDRenderer.dhcp_interfacesFcCs
tdS)N)r-)rrPrrrrRszBSDRenderer.start_servicescCs
tdS)N)r-)rrrrrrQszBSDRenderer.write_configcCs
tdS)N)r-)rr3r2rrrr,szBSDRenderer.rename_interfacecCs
tdS)N)r-)rr9r!r6rrrrBszBSDRenderer.set_route)N)NN)F)N)__name__
__module____qualname__rFrZinterface_routesZroute_namesrrrr5rCrLr	rdictrSrYrRrQr,rBrrrrr
s$
L*1



r
)Zloggingr(ZtypingrZ	cloudinitrrrZcloudinit.distrosrZ%cloudinit.distros.parsers.resolv_confrZ
cloudinit.netrZcloudinit.net.network_stater	Z	getLoggerrZr*ZRendererr
rrrr<module>s