dbfdg 3 nma @ sd d dl Z e jdddZej Zd dlT d dlmZ d dlZd dlT d dlZd dlZG dd deZ dS ) Nzsetroubleshoot-pluginsT)Zfallback)*)Pluginc @ sT e Zd ZedZdZedZdd ZedZdd Z ed Z d Zdd Zd d Z dS )pluginzN SELinux is preventing $SOURCE_PATH "$ACCESS" access to $TARGET_PATH. z/sbin/restorecon $SOURCE_PATHz You can restore the default system context to this file by executing the restorecon command. restorecon '$SOURCE_PATH'. c C s t d|d S )Nam SELinux denied access requested by $SOURCE. $SOURCE_PATH may be mislabeled. $SOURCE_PATH default SELinux type is %s, but its current type is $SOURCE_TYPE. Changing this file back to the default type may fix your problem.
This file could have been mislabeled either by user error, or if an normally confined application was run under the wrong domain.
However, this might also indicate a bug in SELinux because the file should not have been labeled with this type.
If you believe this is a bug, please file a bug report against this package.
)_)selfavcargs r
6/usr/share/setroubleshoot/plugins/restorecon_source.pyget_problem_description, s
zplugin.get_problem_descriptionzGIf you want to fix the label.
$SOURCE_PATH default label should be %s.c C s | j |d S )Nr )if_text)r r r r
r
r get_if_text> s zplugin.get_if_textzyou can run restorecon.z"# /sbin/restorecon -v $SOURCE_PATHc C s0 t j| t | jd d| _d| _td| _d S )Nd ZgreenTzRestore
Context)r __init____name__Zset_prioritylevelZfixabler Zbutton_text)r r
r
r r D s
zplugin.__init__c C s |j s
d S |jd krd S |jd dkr*d S ydtj|jjdtd }|jdd }tj|jjdd }|jdd }||kr| jd|fS W n t k
r Y nX d S )Nr /"r : )
Zquery_environmentZspathselinuxZmatchpathconstripS_IFREGsplitZ
getfileconZreportOSError)r r ZmconZ mcon_typeZgconZ gcon_typer
r
r analyzeK s
zplugin.analyzeN)r
__module____qualname__r ZsummaryZfix_cmdZfix_descriptionr r
r Z then_textZdo_textr r r
r
r
r r s r )
gettextZtranslationr Zsetroubleshoot.utilZsetroubleshoot.Pluginr osstatr r r
r
r
r