dbfdg 3 nmaH @sTddlZddlTddlZejdddZejZddlTddlmZGdddeZdS) N)*zsetroubleshoot-pluginsT)Zfallback)Pluginc@sdeZdZedZedZdZdZdZdZ dZ dZ d d Z d d Z d dZddZddZddZdS)pluginzX SELinux is preventing $SOURCE_PATH from creating an executable memory mapping. a The $SOURCE application attempted to create an anonymous executable memory mapping, or a writable executable file mapping. This is a potential security problem. Most applications do not need this permission. The SELinux Memory Protection Tests web page explains why SELinux intervened and how to work around it if needed. z6If this issue occurred during normal system operation.zIThis alert could be a serious issue and your system could be compromised.z9Contact your security administrator and report this issuezIf you know why $SOURCE needs to map a memory region that is both executable and writable and understand that this is a potential security problem.zFYou can allow the mapping by switching one of the following booleans: zuFollow the advice of the catchall_boolean plugin, otherwise contact your security administrator and report this issuecCs|jS)N)problem_description)selfavcargsr 2/usr/share/setroubleshoot/plugins/allow_execmem.pyget_problem_description5szplugin.get_problem_descriptioncCst|dkr|jS|jS)Nr)lenif_textunsafe_if_text)rrrr r r get_if_text8s zplugin.get_if_textcCs"t|dkr|jdj|S|jS)Nrz, )r then_textjoinunsafe_then_text)rrrr r r get_then_text=s zplugin.get_then_textcCst|dkr|jS|jS)Nr)r do_textunsafe_do_text)rrrr r r get_do_textBs zplugin.get_do_textcCs&tj|td|_d|_|jddS)NFT )r__init____name__ZfixableZ report_bugZ set_priority)rr r r rGs zplugin.__init__cCsDddl}|jdgr@t|jdkr8|jdd|jDS|jSdS)NrZexecmemcSsg|] }|dqS)rr ).0br r r Rsz"plugin.analyze..) subprocessZhas_any_access_inr ZboolsZreport)rrrr r r analyzeMs  zplugin.analyzeN)r __module__ __qualname___Zsummaryrrrrr rrr rrrrrr r r r rs r) ZselinuxstatgettextZ translationr!Zsetroubleshoot.utilZsetroubleshoot.Pluginrrr r r r s