File: //usr/share/setroubleshoot/plugins/__pycache__/openvpn.cpython-36.pyc
3
nm�a � @ sT d dl Z e jddd�Zej Zd dlT d dlmZ d dlZd dlT G dd� de�ZdS ) � Nzsetroubleshoot-pluginsT)Zfallback)�*)�Pluginc @ sL e Zd Zed�Zed�Zed�Zdd� Zdd� Zdd � Z d
d� Z
dd
� ZdS )�pluginzN
SELinux is preventing $SOURCE_PATH "$ACCESS" access to $TARGET_PATH.
z�
SELinux denied access requested by $SOURCE. $TARGET_PATH may
be mislabeled. openvpn is allowed to read content in home directory if it
is labeled correctly.
z�
You can restore the default system context to this file by executing the
restorecon command.
# restorecon -R /root/.ssh
c C s |d dkrt d�S t d�S d S )Nr �movezjIf you want to mv $TARGET_BASE_PATH to standard location so that $SOURCE_BASE_PATH can have $ACCESS accesszlIf you want to modify the label on $TARGET_BASE_PATH so that $SOURCE_BASE_PATH can have $ACCESS access on it)�_)�self�avc�args� r
�,/usr/share/setroubleshoot/plugins/openvpn.py�get_if_text/ s zplugin.get_if_textc C s |d dkrt d�S t d�S d S )Nr r z4you must move the cert file to the ~/.cert directoryzyou must fix the labels.)r )r r r r
r
r �
get_then_text5 s zplugin.get_then_textc C s |d dkrdS dS d S )Nr r z5# mv $TARGET_PATH ~/.cert
# restorecon -R -v ~/.cert
zS# semanage fcontext -a -t home_cert_t $TARGET_PATH
# restorecon -R -v $TARGET_PATH
r
)r r r r
r
r �get_do_text; s zplugin.get_do_textc C s t j| t� | jd� d| _d S )N� Zyellow)r �__init__�__name__Zset_priority�level)r r
r
r r E s
zplugin.__init__c C sJ |j dg�rF|jddg�rF|j|j�rF|jdg�rF| jd�| jd�gS d S ) NZ openvpn_tZuser_home_tZ
user_tmp_t�filer �fixlabel)r N)r N)Zmatches_source_typesZmatches_target_typesZall_accesses_are_inZread_file_permsZ
has_tclass_inZreport)r r r
r
r �analyzeJ s zplugin.analyzeN)r �
__module__�__qualname__r ZsummaryZproblem_descriptionZfix_descriptionr r
r r r r
r
r
r r s
r ) �gettextZtranslationr Zsetroubleshoot.utilZsetroubleshoot.Pluginr �os�statr r
r
r
r �<module> s