Merge branch 'MDL-86849-main' of https://github.com/andrewnicols/moodle
This commit is contained in:
@@ -14,6 +14,11 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
namespace core\check\environment;
|
||||
|
||||
use core\check\check;
|
||||
use core\check\result;
|
||||
|
||||
/**
|
||||
* Verifies config.php is not writable anymore after installation
|
||||
*
|
||||
@@ -23,48 +28,32 @@
|
||||
* @copyright 2008 petr Skoda
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
|
||||
namespace core\check\environment;
|
||||
|
||||
defined('MOODLE_INTERNAL') || die();
|
||||
|
||||
use core\check\check;
|
||||
use core\check\result;
|
||||
|
||||
/**
|
||||
* Verifies config.php is not writable anymore after installation
|
||||
*
|
||||
* @copyright 2020 Brendan Heywood <[email protected]>
|
||||
* @copyright 2008 petr Skoda
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
class configrw extends check {
|
||||
|
||||
/**
|
||||
* Get the short check name
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
final class configrw extends check {
|
||||
#[\Override]
|
||||
public function get_name(): string {
|
||||
return get_string('check_configrw_name', 'report_security');
|
||||
}
|
||||
|
||||
/**
|
||||
* Return result
|
||||
* @return result
|
||||
*/
|
||||
#[\Override]
|
||||
public function get_result(): result {
|
||||
global $CFG;
|
||||
$details = get_string('check_configrw_details', 'report_security');
|
||||
|
||||
if (is_writable($CFG->dirroot . '/config.php')) {
|
||||
$status = result::WARNING;
|
||||
$summary = get_string('check_configrw_warning', 'report_security');
|
||||
} else {
|
||||
$status = result::OK;
|
||||
$summary = get_string('check_configrw_ok', 'report_security');
|
||||
$configfilepaths = [
|
||||
"{$CFG->root}/config.php",
|
||||
"{$CFG->dirroot}/config.php",
|
||||
];
|
||||
|
||||
foreach ($configfilepaths as $configfile) {
|
||||
if (is_writable($configfile)) {
|
||||
$status = result::WARNING;
|
||||
$summary = get_string('check_configrw_warning', 'report_security');
|
||||
return new result($status, $summary, $details);
|
||||
}
|
||||
}
|
||||
|
||||
$status = result::OK;
|
||||
$summary = get_string('check_configrw_ok', 'report_security');
|
||||
return new result($status, $summary, $details);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user