Skip to content

Commit

Permalink
add a disk_free_space check before writing config
Browse files Browse the repository at this point in the history
Signed-off-by: Simon L <[email protected]>
  • Loading branch information
szaimen committed Feb 13, 2023
1 parent 936f634 commit 9b6e5c6
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions lib/private/Config.php
Original file line number Diff line number Diff line change
Expand Up @@ -285,6 +285,12 @@ private function writeData() {
'This can usually be fixed by giving the webserver write access to the config directory.');
}

// Never write file back if disk space should be low (less than 100 KiB)
$df = disk_free_space($this->configDir);
if ($df !== false && (int)$df < 102400) {
throw new \Exception($this->configDir . " does not have enough space for writing the config file! Not writing it back!");
}

// Try to acquire a file lock
if (!flock($filePointer, LOCK_EX)) {
throw new \Exception(sprintf('Could not acquire an exclusive lock on the config file %s', $this->configFilePath));
Expand Down

0 comments on commit 9b6e5c6

Please sign in to comment.