Technically, an overly restrictive umask is a web server misconfiguration.
If the umask is too restrictive, e.g., 0222, then files created by tempnam() are read-only. This is problematic for libs/Smarty/internal/core.write_file.php, core/CacheFile.php, libs/Zend/Http/Client.php.
A workaround would be to: @chmod($file, 0600) after calling tempnam().
(In [3772]) refs #1294 - mkdir wrapper inconsistencies
(In [3773]) refs #1294 - chmod() after tempnam() to undo a restrictive umask
(In [3774]) refs #1294 - chmod() after mkdir() to mitigate restrictive umask