Sindbad~EG File Manager
�
Ght � �D � d Z ddlZddlmZ ddlmZ G d� d� � ZdS )u
This program is free software: you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License,
or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Copyright © 2019 Cloud Linux Software Inc.
This software is also available under ImunifyAV commercial license,
see <https://www.imunify360.com/legal/eula>
� N)�Path)�Optionalc � � e Zd Z ed� � Zedefd�� � Zed
dedede e fd�� � Z
ededededdfd �� � ZdS )�PatchmanConfigz/etc/patchman/patchman.ini�returnc � � t j � � }| j � � � r|� | j � � |S �N)�configparser�ConfigParser�PATH�exists�read)�cls�confs �I/opt/imunify360/venv/lib/python3.11/site-packages/imav/patchman/config.py�_get_configzPatchmanConfig._get_config s= � ��(�*�*���8�?�?��� ��I�I�c�h������ N�section�optionc � � | � � � } |� ||� � S # t j $ r |cY S w xY w)z`
Return *option* value in *section* in config if exist,
None otherwise.
)r �getr
�Error)r r r �defaultr s r r zPatchmanConfig.get% sS � � ��� � �� ��8�8�G�V�,�,�,���!� � � ��N�N�N� ���s �, �A �A �valuec �@ � | � � � }|� |� � s|� |� � |� |||� � | j � d� � 5 }|� |� � ddd� � dS # 1 swxY w Y dS )zm
Set *value* for the *option* of the corresponding *section*
in the patchman config.
�wN)r �has_section�add_section�setr �open�write)r r r r r �config_files r r zPatchmanConfig.set1 s� � � ��� � ������(�(� &����W�%�%�%�����&�%�(�(�(�
�X�]�]�3�
�
� $�;��J�J�{�#�#�#� $� $� $� $� $� $� $� $� $� $� $� $���� $� $� $� $� $� $s �0B�B�Br )�__name__�
__module__�__qualname__r r �classmethod�dictr �strr r r � r r r r s� � � � � � ��4�,�-�-�D���D� � � � �[�� � � �#� �s� �X�c�]� � � � �[� � �
$�#�
$�s�
$�3�
$�4�
$�
$�
$� �[�
$�
$�
$r r )�__doc__r
�pathlibr �typingr r r) r r �<module>r- ss ��� �* � � � � � � � � � � � � � � � �!$� !$� !$� !$� !$� !$� !$� !$� !$� !$r
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists