관리-도구
편집 파일: ispmanager.cpython-311.pyc
� �?h��� �� � d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dlm Z m Z d dlmZ d dl mZ dZd� Zd � Zd ZdZdZd Zddefd�Zd� Zefd�Zd� Zd� Zdefd�Zd� Z G d� de� � ZdS )� N)�Dict)� mysql_lib)�NotSupported�NoDBAccessData)�GeneralPanelPluginV1)�Feature� ISPManagerc �@ � t j � d� � S )N�/usr/local/mgr5/sbin/mgrctl)�os�path�isfile� � ��/builddir/build/BUILD/imunify360-venv-2.5.2/opt/imunify360/venv/lib/python3.11/site-packages/clcommon/cpapi/plugins/ispmanager.py� _is_5_versionr s � � �7�>�>�7�8�8�8r c �\ � t j � d� � p t � � S )N�/usr/local/ispmgr/bin/ispmgr)r r r r r r r �detectr s � � �7�>�>�8�9�9�L�]�_�_�Lr z!/usr/local/ispmgr/etc/ispmgr.confz)/usr/local/mgr5/etc/ispmgr.conf.d/db.confz(\S+) "([^"]+)" {([^}]+)}z (\S+)\s+(\S+)c �Z �� i }d�|r�g �|D ]�}|� � � }t |� � dk r?|� t |g� � � � �� |d � � �ht |� � dk r�� |d � � ��t |d�� � 5 }g }t j t |� � � � � D ]�\ } } }t j t |� � }| | k r�|d|fv r�t �fd�|D � � � � } t |� � � � � � t | � � � � � � � r|� | � � �� ddd� � n# 1 swxY w Y |S )aK /usr/local/ispmgr/etc/ispmgr.conf parser :param sectype: Type sector for example: Service or DbServer or Account :param secname: Name sector. May be different :param seckeys: Name key for retrieving and filtering :param path: path to config file default /usr/local/ispmgr/etc/ispmgr.conf :return: list N� r � �utf-8��encodingc �* �� g | ]\ }}��|�v �||f��S �Nr )�.0�k�v�seckeys_extracteds �r � <listcomp>zconf_pars.<locals>.<listcomp>; s? �� � W� W� W�#'�1�a�"3�";�q�DU�?U�?U� !"�1�v�?U�?U�?Ur )�split�len�update�dict�append�open�re�findall�SECTION_PATTERN�read�KEYWORDS_PATTERN�set�items�issubset)�sectype�secname�seckeysr �seckeys_filter�key_val�key_val_splited�f�result_list�stype�sname�sbody�blst�resultr! s @r � conf_parsr>