File: //lib/python3/dist-packages/cloudinit/distros/__pycache__/networking.cpython-310.pyc
o
�AdV, � @ s� d dl Z d dlZd dlZd dlmZmZ d dlmZmZm Z d dl
mZ e�e
�ZeZeZG dd� de jd�ZG dd � d e�ZG d
d� de�ZG dd
� d
e�ZdS )� N)�List�Optional)�net�subp�util)�ifconfigc @ s� e Zd ZdZdd� Zdefdd�Zdd�d eddfd
d�Ze j
deddfd
d��Zde
fdd�Zde
fdd�Zdedefdd�Zdd�dd�Zddd�defdd�Zdefdd�Zdefd d!�Zde
d"efd#d$�Zde
fd%d&�Zdefd'd(�Zdefd)d*�Zde
fd+d,�Zdd-�de
d.edefd/d0�Zde
defd1d2�Zde
defd3d4�Ze j
de
defd5d6��Zde
defd7d8�Zde
defd9d:�Z de
defd;d<�Z!de
defd=d>�Z"e j
dd?�dGd@dA��Z#dBd-�ded.eddfdCdD�Z$e j
de
defdEdF��Z%dS )H�
Networkinga The root of the Networking hierarchy in cloud-init.
This is part of an ongoing refactor in the cloud-init codebase, for more
details see "``cloudinit.net`` -> ``cloudinit.distros.networking``
Hierarchy" in CONTRIBUTING.rst for full details.
c C s
d | _ d S �N��blacklist_drivers��self� r �>/usr/lib/python3/dist-packages/cloudinit/distros/networking.py�__init__ �
zNetworking.__init__�returnc C � t �� S r )r �_get_current_rename_infor r r r r � z#Networking._get_current_rename_infoN��current_info�renamesc C � t j||d�S )Nr )r �_rename_interfaces)r
r r r r r r � zNetworking._rename_interfaces�netcfgc C � dS )z7Read the network config and rename devices accordingly.Nr �r
r r r r �apply_network_config_names# � z%Networking.apply_network_config_names�devnamec C �
t �|�S r )r �device_devid�r
r! r r r r# '