o
    O6ufý  ã                   @   s0   d dl mZmZmZmZ G dd„ deeeƒZdS )é    )ÚPluginÚRedHatPluginÚUbuntuPluginÚ	PluginOptc                   @   s4   e Zd ZdZdZdZedddd�gZdZd	d
„ Z	dS )ÚSELinuxzSELinux access controlÚselinux)Ú	containerÚsystemÚsecurityÚ	openshiftÚfixfilesFz%collect incorrect file context labels)ÚdefaultÚdesc)Ú
libselinuxzselinux-utilsc                 C   s”   |   ddg¡ | j ddd� |  d¡ |  d¡d }|d	krF|  g d
¢¡ g d¢}|D ]}|  d|› d�¡ q+|  d¡rH| jdddd� d S d S d S )Nz/etc/sestatus.confz/etc/selinuxz/var/lib/selinuxé2   )Ú	sizelimitÚsestatusÚ
getenforceÚoutputÚDisabled)z	ps auxZwwzsestatus -vzsestatus -bzselinuxdefcon rootzselinuxconlist rootzselinuxexeccon /bin/passwdzsemanage -o)ÚfcontextÚuserÚportÚloginÚnodeÚ	interfaceÚmodulez	semanage z -lr   zrestorecon -Rvn /Féd   )ÚstderrÚpriority)Úadd_copy_specÚadd_cmd_outputÚexec_cmdÚ
get_option)ÚselfÚstateÚsubcmdsÚsubcmd© r(   ú</usr/lib/python3/dist-packages/sos/report/plugins/selinux.pyÚsetup   s$   þ




ÿçzSELinux.setupN)
Ú__name__Ú
__module__Ú__qualname__Ú
short_descÚplugin_nameÚprofilesr   Úoption_listÚpackagesr*   r(   r(   r(   r)   r      s    ÿÿr   N)Úsos.report.pluginsr   r   r   r   r   r(   r(   r(   r)   Ú<module>   s   