File: //usr/lib/python3/dist-packages/sos/report/plugins/__pycache__/postfix.cpython-310.pyc
o
-�_gI � @ sZ d dl Z d dlmZmZmZmZ G dd� de�ZG dd� dee�ZG dd� deee�ZdS ) � N)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginc @ s4 e Zd ZdZdZdZdZdd� Zdd� Zd d
� Z dS )�PostfixzPostfix smtp server�postfix)�mail�services�r c C s� g d�}g }zDt | �d�ddd��/}|�� D ] }|�d�rq|�d�}|d �� |v r6|�|d �� d � qW d
� W |S 1 sCw Y W |S tyT Y |S w )zi list of attributes defining a location of a SSL key file
we must forbid from collection
)�lmtp_tls_dkey_file�lmtp_tls_eckey_file�lmtp_tls_key_file�smtp_tls_dkey_file�smtp_tls_eckey_file�smtp_tls_key_file�smtpd_tls_dkey_file�smtpd_tls_eckey_file�smtpd_tls_key_file�"tls_legacy_public_key_fingerprints�tlsproxy_tls_dkey_file�tlsproxy_tls_eckey_file�tlsproxy_tls_key_file�smtpd_tls_dh1024_param_file�smtpd_tls_dh512_param_file�tlsproxy_tls_dh1024_param_file�tlsproxy_tls_dh512_param_file�/etc/postfix/main.cf�r�UTF-8��encoding�#�=r � N)�open� path_join� readlines�
startswith�split�strip�append� Exception)�self�forbid_attributes�fpaths�cffile�line�words� r2 �</usr/lib/python3/dist-packages/sos/report/plugins/postfix.py�forbidden_ssl_keys_files s. �
������z Postfix.forbidden_ssl_keys_filesc
C s d}g }d}t �d�}zbt| �d�ddd��M}|�� D ]>}t �dd |�}|�|�}|d
u r.q|�d��� }||v rY|�d��� } t | �d
krGq| �
|�rT| t |�d
� } |�| � qW d
� W |S 1 sfw Y W |S ty� }
zd|
j
d
� �}| �|� W Y d
}
~
|S d
}
~
ww )z% Get the list of password to exclude )�lmtp_sasl_password_maps�smtp_sasl_password_maps�postscreen_dnsbl_reply_map�smtp_sasl_auth_cache_namezhash:z
^(.*)=(.*)r r r r z#.*� Nr# � r zError parsing main.cf: )�re�compiler$ r% r&