On upgrade set umask and chmod files for #358

This commit is contained in:
the-djmaze 2023-02-07 10:33:23 +01:00
parent 69064e2ad0
commit 276cbc2f03

View file

@ -226,26 +226,22 @@ abstract class Upgrade
// Prevents Apache access error due to directories being 0700 // Prevents Apache access error due to directories being 0700
public static function fixPermissions($mode = 0755) : void public static function fixPermissions($mode = 0755) : void
{ {
\umask(0022);
$target = \rtrim(APP_INDEX_ROOT_PATH, '\\/'); $target = \rtrim(APP_INDEX_ROOT_PATH, '\\/');
// Prevent Apache access error due to directories being 0700 // Prevent Apache access error due to directories being 0700
foreach (\glob("{$target}/snappymail/v/*", \GLOB_ONLYDIR) as $dir) { foreach (\glob("{$target}/snappymail/v/*", \GLOB_ONLYDIR) as $dir) {
\chmod($dir, 0755); \chmod($dir, 0755);
$iterator = new \RecursiveIteratorIterator( foreach (['static','themes'] as $folder) {
new \RecursiveDirectoryIterator("{$dir}/static", \FilesystemIterator::SKIP_DOTS), $iterator = new \RecursiveIteratorIterator(
\RecursiveIteratorIterator::SELF_FIRST new \RecursiveDirectoryIterator("{$dir}/{$folder}", \FilesystemIterator::SKIP_DOTS),
); \RecursiveIteratorIterator::SELF_FIRST
foreach ($items as $item) { );
if ($item->isDir()) { foreach ($items as $item) {
\chmod($item, 0755); if ($item->isDir()) {
} \chmod($item, 0755);
} } else if ($item->isFile()) {
$iterator = new \RecursiveIteratorIterator( \chmod($item, 0644);
new \RecursiveDirectoryIterator("{$dir}/themes", \FilesystemIterator::SKIP_DOTS), }
\RecursiveIteratorIterator::SELF_FIRST
);
foreach ($items as $item) {
if ($item->isDir()) {
\chmod($item, 0755);
} }
} }
} }