diff --git a/public/lib/classes/check/environment/configrw.php b/public/lib/classes/check/environment/configrw.php
index 32d4221b693..448c68be302 100644
--- a/public/lib/classes/check/environment/configrw.php
+++ b/public/lib/classes/check/environment/configrw.php
@@ -14,6 +14,11 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see .
+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
- * @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);
}
}
-