File: //usr/lib/python3/dist-packages/ufw/__pycache__/backend.cpython-310.pyc
o
�Fa7j � @ s~ d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z m
Z
mZmZ ddl
mZmZ ddlZG dd� d�ZdS )z&backend.py: interface for ufw backends� N)�error�warn�debug� _findpath)�UFWError�UFWRulec @ s� e Zd ZdZ d=dd�Zdd� Zdd� Zd d
� Zd>d
d�Zdd� Z dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd � Zd!d"� Zd#d$� Zd%d&� Zd'd(� Zd)d*� Zd+d,� Zd-d.� Zd/d0� Zd1d2� Zd3d4� Zd5d6� Zd7d8� Zd9d:� Zd;d<� ZdS )?�
UFWBackendzInterface for backendsNc C sB d | _ || _|| _g | _g | _ttjj|�}t j
�|d�t j
�|d�t j
�|d�d�| _|d ur6| j�
|� ddddd d
�| _tjj| _| �� | �� | �� tj�| jd �| _t j
�tjjd�| _t j
�tjjd
�| _t j
�tjjd�| _t j
�tjjd�| _z
tj�| j�| _W n ty� td�}t |��w d | _!d S )Nzdefault/ufwzufw/ufw.confzufw/applications.d)�defaults�conf�appsr �d �� i, i� )�off�low�medium�high�fullr �iptablesziptables-restore� ip6tableszip6tables-restorez#Couldn't determine iptables version)"r �name�dryrun�rules�rules6r �ufw�common�
config_dir�os�path�join�files�update� loglevels� do_checks�
_do_checks�
_get_defaults�_read_rules�applications�get_profiles�profiles�iptables_dirr �iptables_restorer �ip6tables_restore�util�get_iptables_version�iptables_version�OSError�_r �caps)�selfr r �extra_files�rootdir�datadir�p�err_msg� r8 �-/usr/lib/python3/dist-packages/ufw/backend.py�__init__ sL ��
���
zUFWBackend.__init__c
C sj | j durdS i | _ i | j d<