| Server IP : 104.21.4.30 / Your IP : 104.23.243.108 Web Server : Apache System : Linux keen-cori.18-142-40-148.plesk.page 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 06:59:36 UTC 2025 x86_64 User : simottodesign.com_2tntp341vs7 ( 10011) PHP Version : 8.3.31 Disable Function : opcache_get_status MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /lib/python3/dist-packages/fail2ban/client/__pycache__/ |
Upload File : |
U
�*m�G�� @ s� d Z dZdZddlZddlZddlmZmZ ddlm Z m
Z
mZ dd lm
Z
mZmZmZ e
e�Zeed
�Zdd� ZG d
d� d�ZG dd� de
�ZG dd� de�ZdS )z?Cyril Jaquier, Yaroslav Halchenko, Serg G. Brester (aka sebres)z\Copyright (c) 2004 Cyril Jaquier, 2007 Yaroslav Halchenko, 2015 Serg G. Brester (aka sebres)�GPL� N)�
NoOptionError�NoSectionError� )�sys�SafeConfigParserWithIncludes�logLevel� )� getLogger�_as_bool�_merge_dicts�substituteRecursiveTags)�bool�intc c sr t | ttf�rL| D ]6}t|�dkr.|\}}}n|d \}}}|||fV qn"| D ]}| | \}}|||fV qPdS )z�Iterator over the options template with default options.
Each options entry is composed of an array or tuple with:
[[type, name, ?default?], ...]
Or it is a dict:
{name: [type, default], ...}
r N)�
isinstance�list�tuple�len)�options�optname�opttype�optvalue� r �>/usr/lib/python3/dist-packages/fail2ban/client/configreader.py�_OptionsTemplateGen) s r c @ s� e Zd ZdZd"dd�Zdd� Zdd� Zed d
� �Zd#dd
�Z d$dd�Z
dd� Zdd� Zd%dd�Z
dd� Zdd� Zd&dd�Zdi fdd�Zd d!� ZdS )'�ConfigReaderzkGeneric config reader class.
A caching adapter which automatically reuses already shared configuration.
Nc K sP d | _ d | _|d k r|| _|d k r6|| _ || _d | _n| jd krLtf |�| _d S �N)�
_cfg_share�_cfg�_cfg_share_kwargs�_cfg_share_basedir�ConfigReaderUnshared)�selfZ
use_config�share_config�kwargsr r r �__init__D s
zConfigReader.__init__c C s | j r| j �|� n|| _d S r )r �
setBaseDirr �r"