JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr O6ufIlddlZddlmZmZmZmZGddeZGddeeZGddeeeZy) N)Plugin RedHatPlugin DebianPlugin UbuntuPluginc.eZdZdZdZdZdZdZdZdZ y) PostfixzPostfix smtp serverpostfix)mailservicesr cgd}g} t|jddd5}|jD]`}|jdr|j d}|dj |vs<|j |d j db d d d |S#1swY|SxYw#t$rY|SwxYw) zi list of attributes defining a location of a SSL key file we must forbid from collection )lmtp_tls_dkey_filelmtp_tls_eckey_filelmtp_tls_key_filesmtp_tls_dkey_filesmtp_tls_eckey_filesmtp_tls_key_filesmtpd_tls_dkey_filesmtpd_tls_eckey_filesmtpd_tls_key_file"tls_legacy_public_key_fingerprintstlsproxy_tls_dkey_filetlsproxy_tls_eckey_filetlsproxy_tls_key_filesmtpd_tls_dh1024_param_filesmtpd_tls_dh512_param_filetlsproxy_tls_dh1024_param_filetlsproxy_tls_dh512_param_file/etc/postfix/main.cfrUTF-8encoding#=rN)open path_join readlines startswithsplitstripappend Exception)selfforbid_attributesfpathscffilelinewordss =B>cd}g}d}tjd} t|jddd5}|j D]}tj dd |}|j |}|.|jd j}||vsR|jd j} t| d k(r| j|r| t|d } |j|  d d d |S#1swY|SxYw#t$r.} d| jd } |j| Yd } ~ |Sd } ~ wwxYw)z% Get the list of password to exclude )lmtp_sasl_password_mapssmtp_sasl_password_mapspostscreen_dnsbl_reply_mapsmtp_sasl_auth_cache_namezhash:z ^(.*)=(.*)rr r!r"z#.*Nr&rzError parsing main.cf: )recompiler'r(r)submatchgroupr,lenr*r-r.args _log_error) r/r0r1prefix option_formatr2r3option attributefilepatherrmsgs r5forbidden_password_filesz Postfix.forbidden_password_files;sN   =1  !dnn%;DD DD E #EE c|jdg|jddg|jgd|j|j|j|j y)Nz /etc/postfix/postconfmailq)z/etc/postfix/*.keyz/etc/postfix/*.crtz/etc/postfix/ssl/) add_copy_specadd_cmd_outputadd_forbidden_pathr6rM)r/s r5setupz Postfix.setupasx         !   = = ?@  = = ?@N) __name__ __module__ __qualname__ short_desc plugin_nameprofilespackagesr6rMrTrUr5rr s(&JK#HH$L$LArUrc&eZdZdZdZfdZxZS) RedHatPostfix)z/etc/rc.d/init.d/postfixr cDt||jdy)Nz /etc/mail)superrTrQ)r/ __class__s r5rTzRedHatPostfix.setupxs   ;'rU)rVrWrXfilesr\rT __classcell__)rbs@r5r_r_ss )EH((rUr_ceZdZdZy) DebianPostfixr N)rVrWrXr\r]rUr5rfrf}sHrUrf) r>sos.report.pluginsrrrrrr_rfr]rUr5rhs? OOcAfcAL(G\(G\<rU