diff options
author | Bjoern Schiessle <schiessle@owncloud.com> | 2014-06-11 17:21:08 +0200 |
---|---|---|
committer | Bjoern Schiessle <schiessle@owncloud.com> | 2014-06-18 12:19:33 +0200 |
commit | a921ad89259f1d580292d649a58160fab7a2a2d7 (patch) | |
tree | 24a31f1862cd4863aaf321bdf002a60dd1ede013 | |
parent | baf46c74cda834bbdb4ecf4669587b92b56fe9a9 (diff) | |
download | nextcloud-server-a921ad89259f1d580292d649a58160fab7a2a2d7.tar.gz nextcloud-server-a921ad89259f1d580292d649a58160fab7a2a2d7.zip |
fix rename of encryption keys
-rw-r--r-- | apps/files_encryption/hooks/hooks.php | 4 | ||||
-rw-r--r-- | apps/files_encryption/tests/hooks.php | 13 |
2 files changed, 9 insertions, 8 deletions
diff --git a/apps/files_encryption/hooks/hooks.php b/apps/files_encryption/hooks/hooks.php index f546ef72373..6f739947b0c 100644 --- a/apps/files_encryption/hooks/hooks.php +++ b/apps/files_encryption/hooks/hooks.php @@ -490,7 +490,7 @@ class Hooks { // create destination folder if not exists
if (!$view->file_exists(dirname($newShareKeyPath))) {
- $view->mkdir(dirname($newShareKeyPath), 0750, true);
+ mkdir($view->getLocalFile($newShareKeyPath), 0750, true);
}
$view->rename($oldShareKeyPath, $newShareKeyPath);
@@ -501,7 +501,7 @@ class Hooks { // create destination folder if not exists
if (!$view->file_exists(dirname($newKeyfilePath))) {
- $view->mkdir(dirname($newKeyfilePath), 0750, true);
+ mkdir(dirname($view->getLocalFile($newKeyfilePath)), 0750, true);
}
$view->rename($oldKeyfilePath, $newKeyfilePath);
diff --git a/apps/files_encryption/tests/hooks.php b/apps/files_encryption/tests/hooks.php index a2e3ea30f04..79699a3ef35 100644 --- a/apps/files_encryption/tests/hooks.php +++ b/apps/files_encryption/tests/hooks.php @@ -301,19 +301,20 @@ class Test_Encryption_Hooks extends \PHPUnit_Framework_TestCase { '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keyfiles/' . $this->filename . '.key')); - // make subfolder + // make subfolder and sub-subfolder $this->rootView->mkdir('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/' . $this->folder); + $this->rootView->mkdir('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/' . $this->folder . '/' . $this->folder); - $this->assertTrue($this->rootView->is_dir('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/' . $this->folder)); + $this->assertTrue($this->rootView->is_dir('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/' . $this->folder . '/' . $this->folder)); // move the file out of the shared folder $root = $this->rootView->getRoot(); $this->rootView->chroot('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/'); - $this->rootView->rename($this->filename, '/' . $this->folder . '/' . $this->filename); + $this->rootView->rename($this->filename, '/' . $this->folder . '/' . $this->folder . '/' . $this->filename); $this->rootView->chroot($root); $this->assertFalse($this->rootView->file_exists('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/' . $this->filename)); - $this->assertTrue($this->rootView->file_exists('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/' . $this->folder . '/' . $this->filename)); + $this->assertTrue($this->rootView->file_exists('/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files/' . $this->folder . '/' . $this->folder . '/' . $this->filename)); // keys should be renamed too $this->assertFalse($this->rootView->file_exists( @@ -324,10 +325,10 @@ class Test_Encryption_Hooks extends \PHPUnit_Framework_TestCase { . $this->filename . '.key')); $this->assertTrue($this->rootView->file_exists( - '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/share-keys/' . $this->folder . '/' + '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/share-keys/' . $this->folder . '/' . $this->folder . '/' . $this->filename . '.' . self::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); $this->assertTrue($this->rootView->file_exists( - '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keyfiles/' . $this->folder . '/' + '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keyfiles/' . $this->folder . '/' . $this->folder . '/' . $this->filename . '.key')); // cleanup |