FileOwnership.php in Automatic Updates 7
File
ReadinessCheckers/FileOwnership.php
View source
<?php
class FileOwnership implements ReadinessCheckerInterface {
public static function run() {
$file_path = DRUPAL_ROOT . '/includes/bootstrap.inc';
return static::ownerIsScriptUser($file_path);
}
protected static function ownerIsScriptUser($file_path) {
$messages = [];
if (function_exists('posix_getuid')) {
$file_owner_uid = fileowner($file_path);
$script_uid = posix_getuid();
if ($file_owner_uid !== $script_uid) {
$messages[] = t('Files are owned by uid "@owner" but PHP is running as uid "@actual". The file owner and PHP user should be the same during an update.', [
'@owner' => $file_owner_uid,
'@file' => $file_path,
'@actual' => $script_uid,
]);
}
}
return $messages;
}
}