o
    i©¹d(  ã                   @   sR   d dl mZmZmZmZ G dd„ deƒZG dd„ deeƒZG dd„ deeeƒZdS )	é    )ÚPluginÚRedHatPluginÚUbuntuPluginÚDebianPluginc                   @   s@   e Zd ZdZdZdZdZdZdd„ Zdd	„ Z	d
d„ Z
dd„ ZdS )ÚAutofszAutofs on-demand automounterÚautofs)ÚstorageÚnfs)z/etc/sysconfig/autofsz/etc/default/autofs)r   c                 C   sB   | j dg| j¢R Ž }|D ]}| d¡D ]
}|dv r  dS qqdS )z; testing if autofs debug has been enabled anywhere
        z%^(DEFAULT_LOGGING|DAEMONOPTIONS)=(.*)ú )z--debugÚdebugTF)Ú	file_grepÚfilesÚsplit)ÚselfÚoptÚopt1Úopt2© r   ú;/usr/lib/python3/dist-packages/sos/report/plugins/autofs.pyÚ
checkdebug   s   ÿÿÿzAutofs.checkdebugc                 C   s,   | j dg| j¢R Ž }|D ]}|d   S dS )z% capture daemon debug output
        z^(daemon.*)\s+(\/var\/log\/.*)é   N)r   r   )r   ÚdebugoutÚir   r   r   Úgetdaemondebug$   s   ÿÿzAutofs.getdaemondebugc                 C   sJ   |   d¡ |  ddi¡ |  d¡ |  d¡ |  ¡ r#|   |  ¡ ¡ d S d S )Nú
/etc/auto*z/etc/autofs.confÚautofs_confr   úautomount -m)Úadd_copy_specÚadd_file_tagsÚadd_service_statusÚadd_cmd_outputr   r   ©r   r   r   r   Úsetup,   s   


ÿzAutofs.setupc                 C   s.   |   ddd¡ |  ddd¡ |  ddd¡ d S )Nr   z(password=)[^,\s]*z
\1********z/etc/autofs_ldap_auth.confz&(secret[\s]*[=]+[\s]*)(\'|\").*(\'|\")z\1\2********\3r   )Údo_path_regex_subÚdo_file_subÚdo_cmd_output_subr!   r   r   r   Úpostproc4   s   ýýýzAutofs.postprocN)Ú__name__Ú
__module__Ú__qualname__Ú
short_descÚplugin_nameÚprofilesr   Úpackagesr   r   r"   r&   r   r   r   r   r      s    r   c                       ó   e Zd Z‡ fdd„Z‡  ZS )ÚRedHatAutofsc                    s*   t t| ƒ ¡  |  d¡r|  d¡ d S d S )NÚverifyzrpm -qV autofs)Úsuperr/   r"   Ú
get_optionr    r!   ©Ú	__class__r   r   r"   V   s   
ÿzRedHatAutofs.setup©r'   r(   r)   r"   Ú__classcell__r   r   r3   r   r/   T   ó    r/   c                       r.   )ÚDebianAutofsc                    s   t t| ƒ ¡  |  d¡ d S )Nzdpkg-query -s autofs)r1   r8   r"   r    r!   r3   r   r   r"   ^   s   zDebianAutofs.setupr5   r   r   r3   r   r8   \   r7   r8   N)Úsos.report.pluginsr   r   r   r   r   r/   r8   r   r   r   r   Ú<module>   s   
F