Browse Source

Fix encryption:fix-encrypted-version command when encrypted is set to 0

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
tags/v25.0.0beta3
Côme Chilliet 1 year ago
parent
commit
b20278f708
No account linked to committer's email address
1 changed files with 16 additions and 0 deletions
  1. 16
    0
      apps/encryption/lib/Command/FixEncryptedVersion.php

+ 16
- 0
apps/encryption/lib/Command/FixEncryptedVersion.php View File

@@ -175,6 +175,22 @@ class FixEncryptedVersion extends Command {
$handle = $this->view->fopen($path, 'rb');

if (\fread($handle, 9001) !== false) {
$fileInfo = $this->view->getFileInfo($path);
if (!$fileInfo) {
$output->writeln("<warning>File info not found for file: \"$path\"</warning>");
return true;
}
$encryptedVersion = $fileInfo->getEncryptedVersion();
$stat = $this->view->stat($path);
if (($encryptedVersion == 0) && isset($stat['hasHeader']) && ($stat['hasHeader'] == true)) {
// The file has encrypted to false but has an encryption header
if ($ignoreCorrectEncVersionCall === true) {
// Lets rectify the file by correcting encrypted version
$output->writeln("<info>Attempting to fix the path: \"$path\"</info>");
return $this->correctEncryptedVersion($path, $output);
}
return false;
}
$output->writeln("<info>The file \"$path\" is: OK</info>");
}


Loading…
Cancel
Save