Skip to content

Commit

Permalink
feat: Improve encryption mode detection in occ info:file
Browse files Browse the repository at this point in the history
Signed-off-by: Louis Chemineau <louis@chmn.me>
  • Loading branch information
artonge committed Aug 28, 2024
1 parent 028d59c commit 1c5eadb
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions core/Command/Info/File.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
use OC\Files\View;
use OCA\Files_External\Config\ExternalMountPoint;
use OCA\GroupFolders\Mount\GroupMountPoint;
use OCP\Files\File as OCPFile;
use OCP\Files\Folder;
use OCP\Files\IHomeStorage;
use OCP\Files\Mount\IMountPoint;
Expand Down Expand Up @@ -61,15 +62,21 @@ public function execute(InputInterface $input, OutputInterface $output): int {
$output->writeln(" fileid: " . $node->getId());
$output->writeln(" mimetype: " . $node->getMimetype());
$output->writeln(" modified: " . (string)$this->l10n->l("datetime", $node->getMTime()));
$output->writeln(" " . ($node->isEncrypted() ? "encrypted" : "not encrypted"));
if ($node->isEncrypted()) {

if ($node instanceof OCPFile && $node->isEncrypted()) {
$output->writeln(' ' . 'server-side encrypted: yes');
$keyPath = $this->encryptionUtil->getFileKeyDir('', $node->getPath());
if ($this->rootView->file_exists($keyPath)) {
$output->writeln(" encryption key at: " . $keyPath);
} else {
$output->writeln(" <error>encryption key not found</error> should be located at: " . $keyPath);
}
}

if ($node instanceof Folder && $node->isEncrypted() || $node instanceof OCPFile && $node->getParent()->isEncrypted()) {
$output->writeln(' ' . 'end-to-end encrypted: yes');
}

$output->writeln(" size: " . Util::humanFileSize($node->getSize()));
$output->writeln(" etag: " . $node->getEtag());
if ($node instanceof Folder) {
Expand Down

0 comments on commit 1c5eadb

Please sign in to comment.