관리-도구
편집 파일: freebsd.cpython-39.opt-1.pyc
a ����'�Dg�����������������������@���sV���d�dl�Z�d�dlZd�dlmZmZmZmZ�e��e�Z G�dd��dejj j�Zddd�Z dS�)�����N)�distros�net�subp�utilc�����������������������s@���e�Zd�Zd ��fdd� Zdd��Zdd��Zdd d �Zdd��Z���ZS�)�RendererNc��������������������s���d|�_�tt|������d�S�)Nr���)� _route_cpt�superr����__init__)�selfZconfig�� __class__���9/usr/lib/python3.9/site-packages/cloudinit/net/freebsd.pyr ������s����zRenderer.__init__c�����������������C���s���|���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����|�j����D�]b\}}t|t�rPd|�d�|�d�f�}|�d�}|r\|d|�7�}n|dkr\d}|��d|�|��q |�j���D�]T\}}t|t�r�d|�d�|�d �f�}|�d�}|r�|d|�7�}|��d |�|��qxd�S�)Nzinet %s netmask %s�address�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���s0���� � � �zRenderer.write_configFc�����������������C���s����|st��d��d�S�|����D�]}tjj�|tjj ��qt j g�d�dd��t j g�d�dddgd��|����D�]}tjj�|tjj ��qfd�S�) Nz!freebsd generate postcmd disabled)�serviceZnetif�restartT)�capture)r���Zroutingr���r�������)r���Zrcs)�LOG�debugZdhcp_interfacesr���ZdhcpZIscDhclientZstop_servicer���ZfreebsdZDistror���Z start_service)r ����runZdhcp_interfacer ���r ���r����start_services.���s���� ��zRenderer.start_servicesc�����������������C���s����|dkr|���d|��n�|dkr,|���d|��n�d|�j���}d|v�r�d|��d|��d |���}|���d |�|��|�j��d |���|�_|���d|�j�����nJd|��d|��d |���}|���d |�|��|�j��d |���|�_|���d|�j�����|��jd7��_d�S�)Nz0.0.0.0Z defaultrouterz::Zipv6_defaultrouterr����:z-net �/� Zipv6_route_Zipv6_static_routesz -netmask Zroute_Z static_routesr���)r���r���Zroute6_names�stripZroute_names)r ����networkr���ZgatewayZ route_nameZ route_cmdr ���r ���r���� set_routeH���s&���� � �zRenderer.set_route)N)F) �__name__� __module__�__qualname__r ���r���r���r#���r)���� __classcell__r ���r ���r���r���r������s ��� r���c�����������������C���s���t����pt����S�)N)r���Z is_FreeBSDZis_DragonFlyBSD)�targetr ���r ���r���� available`���s����r/���)N)ZloggingZcloudinit.net.bsdZ cloudinitr���r���r���r���Z getLoggerr*���r ���ZbsdZBSDRendererr���r/���r ���r ���r ���r����<module>���s ��� U