Fix namespaces of encryption classes and encryption teststags/v8.0.0alpha1
@@ -69,7 +69,7 @@ $storageInfo=OC_Helper::getStorageInfo('/', $dirInfo); | |||
// if the encryption app is disabled, than everything is fine (INIT_SUCCESSFUL status code) | |||
$encryptionInitStatus = 2; | |||
if (OC_App::isEnabled('files_encryption')) { | |||
$session = new \OCA\Encryption\Session(new \OC\Files\View('/')); | |||
$session = new \OCA\Files_Encryption\Session(new \OC\Files\View('/')); | |||
$encryptionInitStatus = $session->getInitialized(); | |||
} | |||
@@ -7,7 +7,8 @@ | |||
* | |||
* Script to handle admin settings for encrypted key recovery | |||
*/ | |||
use OCA\Encryption; | |||
use OCA\Files_Encryption\Helper; | |||
\OCP\JSON::checkAdminUser(); | |||
\OCP\JSON::checkAppEnabled('files_encryption'); | |||
@@ -42,7 +43,7 @@ $recoveryKeyId = \OC::$server->getAppConfig()->getValue('files_encryption', 'rec | |||
if (isset($_POST['adminEnableRecovery']) && $_POST['adminEnableRecovery'] === '1') { | |||
$return = \OCA\Encryption\Helper::adminEnableRecovery($recoveryKeyId, $_POST['recoveryPassword']); | |||
$return = Helper::adminEnableRecovery($recoveryKeyId, $_POST['recoveryPassword']); | |||
// Return success or failure | |||
if ($return) { | |||
@@ -56,7 +57,7 @@ if (isset($_POST['adminEnableRecovery']) && $_POST['adminEnableRecovery'] === '1 | |||
isset($_POST['adminEnableRecovery']) | |||
&& '0' === $_POST['adminEnableRecovery'] | |||
) { | |||
$return = \OCA\Encryption\Helper::adminDisableRecovery($_POST['recoveryPassword']); | |||
$return = Helper::adminDisableRecovery($_POST['recoveryPassword']); | |||
if ($return) { | |||
$successMessage = $l->t('Recovery key successfully disabled'); |
@@ -9,8 +9,6 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
\OCP\JSON::checkAdminUser(); | |||
\OCP\JSON::checkAppEnabled('files_encryption'); | |||
\OCP\JSON::callCheck(); | |||
@@ -49,21 +47,21 @@ if ($_POST['newPassword'] !== $_POST['confirmPassword']) { | |||
} | |||
$view = new \OC\Files\View('/'); | |||
$util = new \OCA\Encryption\Util(new \OC\Files\View('/'), \OCP\User::getUser()); | |||
$util = new \OCA\Files_Encryption\Util(new \OC\Files\View('/'), \OCP\User::getUser()); | |||
$proxyStatus = \OC_FileProxy::$enabled; | |||
\OC_FileProxy::$enabled = false; | |||
$keyId = $util->getRecoveryKeyId(); | |||
$encryptedRecoveryKey = Encryption\Keymanager::getPrivateSystemKey($keyId); | |||
$decryptedRecoveryKey = $encryptedRecoveryKey ? \OCA\Encryption\Crypt::decryptPrivateKey($encryptedRecoveryKey, $oldPassword) : false; | |||
$encryptedRecoveryKey = \OCA\Files_Encryption\Keymanager::getPrivateSystemKey($keyId); | |||
$decryptedRecoveryKey = $encryptedRecoveryKey ? \OCA\Files_Encryption\Crypt::decryptPrivateKey($encryptedRecoveryKey, $oldPassword) : false; | |||
if ($decryptedRecoveryKey) { | |||
$cipher = \OCA\Encryption\Helper::getCipher(); | |||
$encryptedKey = \OCA\Encryption\Crypt::symmetricEncryptFileContent($decryptedRecoveryKey, $newPassword, $cipher); | |||
$cipher = \OCA\Files_Encryption\Helper::getCipher(); | |||
$encryptedKey = \OCA\Files_Encryption\Crypt::symmetricEncryptFileContent($decryptedRecoveryKey, $newPassword, $cipher); | |||
if ($encryptedKey) { | |||
\OCA\Encryption\Keymanager::setPrivateSystemKey($encryptedKey, $keyId); | |||
\OCA\Files_Encryption\Keymanager::setPrivateSystemKey($encryptedKey, $keyId); | |||
$return = true; | |||
} | |||
} |
@@ -6,7 +6,8 @@ | |||
* | |||
* check migration status | |||
*/ | |||
use OCA\Encryption\Util; | |||
use OCA\Files_Encryption\Util; | |||
\OCP\JSON::checkAppEnabled('files_encryption'); | |||
@@ -9,8 +9,6 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
\OCP\JSON::checkLoggedIn(); | |||
\OCP\JSON::checkAppEnabled('files_encryption'); | |||
\OCP\JSON::callCheck(); | |||
@@ -24,7 +22,7 @@ $oldPassword = $_POST['oldPassword']; | |||
$newPassword = $_POST['newPassword']; | |||
$view = new \OC\Files\View('/'); | |||
$session = new \OCA\Encryption\Session($view); | |||
$session = new \OCA\Files_Encryption\Session($view); | |||
$user = \OCP\User::getUser(); | |||
$loginName = \OC::$server->getUserSession()->getLoginName(); | |||
@@ -36,14 +34,14 @@ if ($passwordCorrect !== false) { | |||
$proxyStatus = \OC_FileProxy::$enabled; | |||
\OC_FileProxy::$enabled = false; | |||
$encryptedKey = Encryption\Keymanager::getPrivateKey($view, $user); | |||
$decryptedKey = $encryptedKey ? \OCA\Encryption\Crypt::decryptPrivateKey($encryptedKey, $oldPassword) : false; | |||
$encryptedKey = \OCA\Files_Encryption\Keymanager::getPrivateKey($view, $user); | |||
$decryptedKey = $encryptedKey ? \OCA\Files_Encryption\Crypt::decryptPrivateKey($encryptedKey, $oldPassword) : false; | |||
if ($decryptedKey) { | |||
$cipher = \OCA\Encryption\Helper::getCipher(); | |||
$encryptedKey = \OCA\Encryption\Crypt::symmetricEncryptFileContent($decryptedKey, $newPassword, $cipher); | |||
$cipher = \OCA\Files_Encryption\Helper::getCipher(); | |||
$encryptedKey = \OCA\Files_Encryption\Crypt::symmetricEncryptFileContent($decryptedKey, $newPassword, $cipher); | |||
if ($encryptedKey) { | |||
\OCA\Encryption\Keymanager::setPrivateKey($encryptedKey, $user); | |||
\OCA\Files_Encryption\Keymanager::setPrivateKey($encryptedKey, $user); | |||
$session->setPrivateKey($decryptedKey); | |||
$return = true; | |||
} | |||
@@ -61,7 +59,7 @@ if ($decryptedKey) { | |||
// success or failure | |||
if ($return) { | |||
$session->setInitialized(\OCA\Encryption\Session::INIT_SUCCESSFUL); | |||
$session->setInitialized(\OCA\Files_Encryption\Session::INIT_SUCCESSFUL); | |||
\OCP\JSON::success(array('data' => array('message' => $l->t('Private key password successfully updated.')))); | |||
} else { | |||
\OCP\JSON::error(array('data' => array('message' => $errorMessage))); |
@@ -7,8 +7,6 @@ | |||
* Script to handle admin settings for encrypted key recovery | |||
*/ | |||
use OCA\Encryption; | |||
\OCP\JSON::checkLoggedIn(); | |||
\OCP\JSON::checkAppEnabled('files_encryption'); | |||
\OCP\JSON::callCheck(); | |||
@@ -22,7 +20,7 @@ if ( | |||
$userId = \OCP\USER::getUser(); | |||
$view = new \OC\Files\View('/'); | |||
$util = new \OCA\Encryption\Util($view, $userId); | |||
$util = new \OCA\Files_Encryption\Util($view, $userId); | |||
// Save recovery preference to DB | |||
$return = $util->setRecoveryForUser($_POST['userEnableRecovery']); |
@@ -1,41 +1,26 @@ | |||
<?php | |||
OC::$CLASSPATH['OCA\Encryption\Crypt'] = 'files_encryption/lib/crypt.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Hooks'] = 'files_encryption/hooks/hooks.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Util'] = 'files_encryption/lib/util.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Keymanager'] = 'files_encryption/lib/keymanager.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Stream'] = 'files_encryption/lib/stream.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Proxy'] = 'files_encryption/lib/proxy.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Session'] = 'files_encryption/lib/session.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Capabilities'] = 'files_encryption/lib/capabilities.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Helper'] = 'files_encryption/lib/helper.php'; | |||
// Exceptions | |||
OC::$CLASSPATH['OCA\Encryption\Exception\MultiKeyEncryptException'] = 'files_encryption/exception/multiKeyEncryptException.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Exception\MultiKeyDecryptException'] = 'files_encryption/exception/multiKeyDecryptException.php'; | |||
OC::$CLASSPATH['OCA\Encryption\Exception\EncryptionException'] = 'files_encryption/exception/encryptionException.php'; | |||
\OCP\Util::addTranslations('files_encryption'); | |||
\OCP\Util::addscript('files_encryption', 'encryption'); | |||
\OCP\Util::addscript('files_encryption', 'detect-migration'); | |||
if (!OC_Config::getValue('maintenance', false)) { | |||
OC_FileProxy::register(new OCA\Encryption\Proxy()); | |||
OC_FileProxy::register(new OCA\Files_Encryption\Proxy()); | |||
// User related hooks | |||
OCA\Encryption\Helper::registerUserHooks(); | |||
OCA\Files_Encryption\Helper::registerUserHooks(); | |||
// Sharing related hooks | |||
OCA\Encryption\Helper::registerShareHooks(); | |||
OCA\Files_Encryption\Helper::registerShareHooks(); | |||
// Filesystem related hooks | |||
OCA\Encryption\Helper::registerFilesystemHooks(); | |||
OCA\Files_Encryption\Helper::registerFilesystemHooks(); | |||
// App manager related hooks | |||
OCA\Encryption\Helper::registerAppHooks(); | |||
OCA\Files_Encryption\Helper::registerAppHooks(); | |||
if(!in_array('crypt', stream_get_wrappers())) { | |||
stream_wrapper_register('crypt', 'OCA\Encryption\Stream'); | |||
stream_wrapper_register('crypt', 'OCA\Files_Encryption\Stream'); | |||
} | |||
} else { | |||
// logout user if we are in maintenance to force re-login |
@@ -19,4 +19,4 @@ $this->create('files_encryption_ajax_userrecovery', 'ajax/userrecovery.php') | |||
->actionInclude('files_encryption/ajax/userrecovery.php'); | |||
// Register with the capabilities API | |||
OC_API::register('get', '/cloud/capabilities', array('OCA\Encryption\Capabilities', 'getCapabilities'), 'files_encryption', OC_API::USER_AUTH); | |||
OC_API::register('get', '/cloud/capabilities', array('OCA\Files_Encryption\Capabilities', 'getCapabilities'), 'files_encryption', OC_API::USER_AUTH); |
@@ -21,7 +21,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption\Exception; | |||
namespace OCA\Files_Encryption\Exception; | |||
/** | |||
* Base class for all encryption exception |
@@ -21,7 +21,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption\Exception; | |||
namespace OCA\Files_Encryption\Exception; | |||
/** | |||
* Throw this encryption if multi key decryption failed |
@@ -21,7 +21,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption\Exception; | |||
namespace OCA\Files_Encryption\Exception; | |||
/** | |||
* Throw this exception if multi key encrytion fails |
@@ -12,14 +12,14 @@ if (!isset($_)) { //also provide standalone error page | |||
if (isset($_GET['errorCode'])) { | |||
$errorCode = $_GET['errorCode']; | |||
switch ($errorCode) { | |||
case \OCA\Encryption\Crypt::ENCRYPTION_NOT_INITIALIZED_ERROR: | |||
case \OCA\Files_Encryption\Crypt::ENCRYPTION_NOT_INITIALIZED_ERROR: | |||
$errorMsg = $l->t('Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app.'); | |||
break; | |||
case \OCA\Encryption\Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR: | |||
case \OCA\Files_Encryption\Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR: | |||
$theme = new OC_Defaults(); | |||
$errorMsg = $l->t('Your private key is not valid! Likely your password was changed outside of %s (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files.', array($theme->getName())); | |||
break; | |||
case \OCA\Encryption\Crypt::ENCRYPTION_NO_SHARE_KEY_FOUND: | |||
case \OCA\Files_Encryption\Crypt::ENCRYPTION_NO_SHARE_KEY_FOUND: | |||
$errorMsg = $l->t('Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.'); | |||
break; | |||
default: | |||
@@ -27,7 +27,7 @@ if (!isset($_)) { //also provide standalone error page | |||
break; | |||
} | |||
} else { | |||
$errorCode = \OCA\Encryption\Crypt::ENCRYPTION_UNKNOWN_ERROR; | |||
$errorCode = \OCA\Files_Encryption\Crypt::ENCRYPTION_UNKNOWN_ERROR; | |||
$errorMsg = $l->t("Unknown error. Please check your system settings or contact your administrator"); | |||
} | |||
@@ -6,7 +6,7 @@ | |||
* See the COPYING-README file. | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
class Capabilities { | |||
@@ -25,7 +25,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
/** | |||
* Class for common cryptography functionality | |||
@@ -133,7 +133,7 @@ class Crypt { | |||
* Check if a file's contents contains an IV and is symmetrically encrypted | |||
* @param string $content | |||
* @return boolean | |||
* @note see also OCA\Encryption\Util->isEncryptedPath() | |||
* @note see also \OCA\Files_Encryption\Util->isEncryptedPath() | |||
*/ | |||
public static function isCatfileContent($content) { | |||
@@ -190,7 +190,7 @@ class Crypt { | |||
* @param string $passphrase | |||
* @param string $cypher used for encryption, currently we support AES-128-CFB and AES-256-CFB | |||
* @return string encrypted file content | |||
* @throws \OCA\Encryption\Exception\EncryptionException | |||
* @throws \OCA\Files_Encryption\Exception\EncryptionException | |||
*/ | |||
private static function encrypt($plainContent, $iv, $passphrase = '', $cipher = Crypt::DEFAULT_CIPHER) { | |||
@@ -379,7 +379,7 @@ class Crypt { | |||
* @param string $plainContent content to be encrypted | |||
* @param array $publicKeys array keys must be the userId of corresponding user | |||
* @return array keys: keys (array, key = userId), data | |||
* @throws \OCA\Encryption\Exception\MultiKeyEncryptException if encryption failed | |||
* @throws \OCA\Files_Encryption\Exception\MultiKeyEncryptException if encryption failed | |||
* @note symmetricDecryptFileContent() can decrypt files created using this method | |||
*/ | |||
public static function multiKeyEncrypt($plainContent, array $publicKeys) { | |||
@@ -425,7 +425,7 @@ class Crypt { | |||
* @param string $encryptedContent | |||
* @param string $shareKey | |||
* @param mixed $privateKey | |||
* @throws \OCA\Encryption\Exception\MultiKeyDecryptException if decryption failed | |||
* @throws \OCA\Files_Encryption\Exception\MultiKeyDecryptException if decryption failed | |||
* @internal param string $plainContent contains decrypted content | |||
* @return string $plainContent decrypted string | |||
* @note symmetricDecryptFileContent() can be used to decrypt files created using this method | |||
@@ -554,7 +554,7 @@ class Crypt { | |||
* get chiper from header | |||
* | |||
* @param array $header | |||
* @throws \OCA\Encryption\Exception\EncryptionException | |||
* @throws \OCA\Files_Encryption\Exception\EncryptionException | |||
*/ | |||
public static function getCipher($header) { | |||
$cipher = isset($header['cipher']) ? $header['cipher'] : 'AES-128-CFB'; |
@@ -23,11 +23,11 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
/** | |||
* Class to manage registration of hooks an various helper methods | |||
* @package OCA\Encryption | |||
* @package OCA\Files_Encryption | |||
*/ | |||
class Helper { | |||
@@ -39,9 +39,9 @@ class Helper { | |||
*/ | |||
public static function registerShareHooks() { | |||
\OCP\Util::connectHook('OCP\Share', 'pre_shared', 'OCA\Encryption\Hooks', 'preShared'); | |||
\OCP\Util::connectHook('OCP\Share', 'post_shared', 'OCA\Encryption\Hooks', 'postShared'); | |||
\OCP\Util::connectHook('OCP\Share', 'post_unshare', 'OCA\Encryption\Hooks', 'postUnshare'); | |||
\OCP\Util::connectHook('OCP\Share', 'pre_shared', 'OCA\Files_Encryption\Hooks', 'preShared'); | |||
\OCP\Util::connectHook('OCP\Share', 'post_shared', 'OCA\Files_Encryption\Hooks', 'postShared'); | |||
\OCP\Util::connectHook('OCP\Share', 'post_unshare', 'OCA\Files_Encryption\Hooks', 'postUnshare'); | |||
} | |||
/** | |||
@@ -50,12 +50,12 @@ class Helper { | |||
*/ | |||
public static function registerUserHooks() { | |||
\OCP\Util::connectHook('OC_User', 'post_login', 'OCA\Encryption\Hooks', 'login'); | |||
\OCP\Util::connectHook('OC_User', 'logout', 'OCA\Encryption\Hooks', 'logout'); | |||
\OCP\Util::connectHook('OC_User', 'post_setPassword', 'OCA\Encryption\Hooks', 'setPassphrase'); | |||
\OCP\Util::connectHook('OC_User', 'pre_setPassword', 'OCA\Encryption\Hooks', 'preSetPassphrase'); | |||
\OCP\Util::connectHook('OC_User', 'post_createUser', 'OCA\Encryption\Hooks', 'postCreateUser'); | |||
\OCP\Util::connectHook('OC_User', 'post_deleteUser', 'OCA\Encryption\Hooks', 'postDeleteUser'); | |||
\OCP\Util::connectHook('OC_User', 'post_login', 'OCA\Files_Encryption\Hooks', 'login'); | |||
\OCP\Util::connectHook('OC_User', 'logout', 'OCA\Files_Encryption\Hooks', 'logout'); | |||
\OCP\Util::connectHook('OC_User', 'post_setPassword', 'OCA\Files_Encryption\Hooks', 'setPassphrase'); | |||
\OCP\Util::connectHook('OC_User', 'pre_setPassword', 'OCA\Files_Encryption\Hooks', 'preSetPassphrase'); | |||
\OCP\Util::connectHook('OC_User', 'post_createUser', 'OCA\Files_Encryption\Hooks', 'postCreateUser'); | |||
\OCP\Util::connectHook('OC_User', 'post_deleteUser', 'OCA\Files_Encryption\Hooks', 'postDeleteUser'); | |||
} | |||
/** | |||
@@ -64,15 +64,15 @@ class Helper { | |||
*/ | |||
public static function registerFilesystemHooks() { | |||
\OCP\Util::connectHook('OC_Filesystem', 'rename', 'OCA\Encryption\Hooks', 'preRename'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_rename', 'OCA\Encryption\Hooks', 'postRenameOrCopy'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'copy', 'OCA\Encryption\Hooks', 'preCopy'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_copy', 'OCA\Encryption\Hooks', 'postRenameOrCopy'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_delete', 'OCA\Encryption\Hooks', 'postDelete'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'delete', 'OCA\Encryption\Hooks', 'preDelete'); | |||
\OCP\Util::connectHook('\OC\Core\LostPassword\Controller\LostController', 'post_passwordReset', 'OCA\Encryption\Hooks', 'postPasswordReset'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_umount', 'OCA\Encryption\Hooks', 'postUnmount'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'umount', 'OCA\Encryption\Hooks', 'preUnmount'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'rename', 'OCA\Files_Encryption\Hooks', 'preRename'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_rename', 'OCA\Files_Encryption\Hooks', 'postRenameOrCopy'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'copy', 'OCA\Files_Encryption\Hooks', 'preCopy'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_copy', 'OCA\Files_Encryption\Hooks', 'postRenameOrCopy'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_delete', 'OCA\Files_Encryption\Hooks', 'postDelete'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'delete', 'OCA\Files_Encryption\Hooks', 'preDelete'); | |||
\OCP\Util::connectHook('\OC\Core\LostPassword\Controller\LostController', 'post_passwordReset', 'OCA\Files_Encryption\Hooks', 'postPasswordReset'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'post_umount', 'OCA\Files_Encryption\Hooks', 'postUnmount'); | |||
\OCP\Util::connectHook('OC_Filesystem', 'umount', 'OCA\Files_Encryption\Hooks', 'preUnmount'); | |||
} | |||
/** | |||
@@ -81,8 +81,8 @@ class Helper { | |||
*/ | |||
public static function registerAppHooks() { | |||
\OCP\Util::connectHook('OC_App', 'pre_disable', 'OCA\Encryption\Hooks', 'preDisable'); | |||
\OCP\Util::connectHook('OC_App', 'post_disable', 'OCA\Encryption\Hooks', 'postEnable'); | |||
\OCP\Util::connectHook('OC_App', 'pre_disable', 'OCA\Files_Encryption\Hooks', 'preDisable'); | |||
\OCP\Util::connectHook('OC_App', 'post_disable', 'OCA\Files_Encryption\Hooks', 'postEnable'); | |||
} | |||
/** | |||
@@ -131,8 +131,6 @@ class Helper { | |||
* | |||
* @param string $recoveryKeyId | |||
* @param string $recoveryPassword | |||
* @internal param \OCA\Encryption\Util $util | |||
* @internal param string $password | |||
* @return bool | |||
*/ | |||
public static function adminEnableRecovery($recoveryKeyId, $recoveryPassword) { | |||
@@ -147,13 +145,13 @@ class Helper { | |||
if (!Keymanager::recoveryKeyExists($view)) { | |||
$keypair = \OCA\Encryption\Crypt::createKeypair(); | |||
$keypair = Crypt::createKeypair(); | |||
// Save public key | |||
Keymanager::setPublicKey($keypair['publicKey'], $recoveryKeyId); | |||
$cipher = \OCA\Encryption\Helper::getCipher(); | |||
$encryptedKey = \OCA\Encryption\Crypt::symmetricEncryptFileContent($keypair['privateKey'], $recoveryPassword, $cipher); | |||
$cipher = Helper::getCipher(); | |||
$encryptedKey = Crypt::symmetricEncryptFileContent($keypair['privateKey'], $recoveryPassword, $cipher); | |||
if ($encryptedKey) { | |||
Keymanager::setPrivateSystemKey($encryptedKey, $recoveryKeyId); | |||
// Set recoveryAdmin as enabled | |||
@@ -162,7 +160,7 @@ class Helper { | |||
} | |||
} else { // get recovery key and check the password | |||
$util = new \OCA\Encryption\Util(new \OC\Files\View('/'), \OCP\User::getUser()); | |||
$util = new Util(new \OC\Files\View('/'), \OCP\User::getUser()); | |||
$return = $util->checkRecoveryPassword($recoveryPassword); | |||
if ($return) { | |||
$appConfig->setValue('files_encryption', 'recoveryAdminEnabled', 1); | |||
@@ -362,14 +360,14 @@ class Helper { | |||
if ($errorCode === null) { | |||
$init = $session->getInitialized(); | |||
switch ($init) { | |||
case \OCA\Encryption\Session::INIT_EXECUTED: | |||
$errorCode = \OCA\Encryption\Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR; | |||
case Session::INIT_EXECUTED: | |||
$errorCode = Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR; | |||
break; | |||
case \OCA\Encryption\Session::NOT_INITIALIZED: | |||
$errorCode = \OCA\Encryption\Crypt::ENCRYPTION_NOT_INITIALIZED_ERROR; | |||
case Session::NOT_INITIALIZED: | |||
$errorCode = Crypt::ENCRYPTION_NOT_INITIALIZED_ERROR; | |||
break; | |||
default: | |||
$errorCode = \OCA\Encryption\Crypt::ENCRYPTION_UNKNOWN_ERROR; | |||
$errorCode = Crypt::ENCRYPTION_UNKNOWN_ERROR; | |||
} | |||
} | |||
@@ -23,7 +23,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
use OC\Files\Filesystem; | |||
@@ -59,7 +59,7 @@ class Hooks { | |||
\OC_Util::setupFS($params['uid']); | |||
} | |||
$privateKey = \OCA\Encryption\Keymanager::getPrivateKey($view, $params['uid']); | |||
$privateKey = Keymanager::getPrivateKey($view, $params['uid']); | |||
// if no private key exists, check server configuration | |||
if (!$privateKey) { | |||
@@ -128,7 +128,7 @@ class Hooks { | |||
* remove keys from session during logout | |||
*/ | |||
public static function logout() { | |||
$session = new \OCA\Encryption\Session(new \OC\Files\View()); | |||
$session = new Session(new \OC\Files\View()); | |||
$session->removeKeys(); | |||
} | |||
@@ -182,7 +182,7 @@ class Hooks { | |||
if (Crypt::mode() === 'server') { | |||
$view = new \OC\Files\View('/'); | |||
$session = new \OCA\Encryption\Session($view); | |||
$session = new Session($view); | |||
// Get existing decrypted private key | |||
$privateKey = $session->getPrivateKey(); | |||
@@ -236,7 +236,7 @@ class Hooks { | |||
Keymanager::setPublicKey($keypair['publicKey'], $user); | |||
// Encrypt private key with new password | |||
$encryptedKey = \OCA\Encryption\Crypt::symmetricEncryptFileContent($keypair['privateKey'], $newUserPassword, Helper::getCipher()); | |||
$encryptedKey = Crypt::symmetricEncryptFileContent($keypair['privateKey'], $newUserPassword, Helper::getCipher()); | |||
if ($encryptedKey) { | |||
Keymanager::setPrivateKey($encryptedKey, $user); | |||
@@ -331,7 +331,7 @@ class Hooks { | |||
private static function updateKeyfiles($path) { | |||
$view = new \OC\Files\View('/'); | |||
$userId = \OCP\User::getUser(); | |||
$session = new \OCA\Encryption\Session($view); | |||
$session = new Session($view); | |||
$util = new Util($view, $userId); | |||
$sharingEnabled = \OCP\Share::isEnabled(); | |||
@@ -504,8 +504,8 @@ class Hooks { | |||
\OC::$server->getConfig()->deleteAppFromAllUsers('files_encryption'); | |||
$session = new \OCA\Encryption\Session(new \OC\Files\View('/')); | |||
$session->setInitialized(\OCA\Encryption\Session::NOT_INITIALIZED); | |||
$session = new Session(new \OC\Files\View('/')); | |||
$session->setInitialized(Session::NOT_INITIALIZED); | |||
} | |||
} | |||
@@ -515,8 +515,8 @@ class Hooks { | |||
*/ | |||
public static function postEnable($params) { | |||
if ($params['app'] === 'files_encryption') { | |||
$session = new \OCA\Encryption\Session(new \OC\Files\View('/')); | |||
$session->setInitialized(\OCA\Encryption\Session::NOT_INITIALIZED); | |||
$session = new Session(new \OC\Files\View('/')); | |||
$session->setInitialized(Session::NOT_INITIALIZED); | |||
} | |||
} | |||
@@ -22,7 +22,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
/** | |||
* Class to manage storage and retrieval of encryption keys | |||
@@ -141,7 +141,7 @@ class Keymanager { | |||
* store file encryption key | |||
* | |||
* @param \OC\Files\View $view | |||
* @param \OCA\Encryption\Util $util | |||
* @param \OCA\Files_Encryption\Util $util | |||
* @param string $path relative path of the file, including filename | |||
* @param string $catfile keyfile content | |||
* @return bool true/false | |||
@@ -158,7 +158,7 @@ class Keymanager { | |||
* get path to key folder for a given file | |||
* | |||
* @param \OC\Files\View $view relative to data directory | |||
* @param \OCA\Encryption\Util $util | |||
* @param \OCA\Files_Encryption\Util $util | |||
* @param string $path path to the file, relative to the users file directory | |||
* @return string | |||
*/ | |||
@@ -186,7 +186,7 @@ class Keymanager { | |||
* get path to file key for a given file | |||
* | |||
* @param \OC\Files\View $view relative to data directory | |||
* @param \OCA\Encryption\Util $util | |||
* @param \OCA\Files_Encryption\Util $util | |||
* @param string $path path to the file, relative to the users file directory | |||
* @return string | |||
*/ | |||
@@ -199,7 +199,7 @@ class Keymanager { | |||
* get path to share key for a given user | |||
* | |||
* @param \OC\Files\View $view relateive to data directory | |||
* @param \OCA\Encryption\Util $util | |||
* @param \OCA\Files_Encryption\Util $util | |||
* @param string $path path to file relative to the users files directoy | |||
* @param string $uid user for whom we want the share-key path | |||
* @retrun string | |||
@@ -243,9 +243,8 @@ class Keymanager { | |||
/** | |||
* retrieve keyfile for an encrypted file | |||
* @param \OC\Files\View $view | |||
* @param \OCA\Encryption\Util $util | |||
* @param \OCA\Files_Encryption\Util $util | |||
* @param string|false $filePath | |||
* @internal param \OCA\Encryption\file $string name | |||
* @return string file key or false | |||
* @note The keyfile returned is asymmetrically encrypted. Decryption | |||
* of the keyfile must be performed by client code | |||
@@ -347,7 +346,7 @@ class Keymanager { | |||
/** | |||
* store multiple share keys for a single file | |||
* @param \OC\Files\View $view | |||
* @param \OCA\Encryption\Util $util | |||
* @param \OCA\Files_Encryption\Util $util | |||
* @param string $path | |||
* @param array $shareKeys | |||
* @return bool | |||
@@ -376,7 +375,7 @@ class Keymanager { | |||
* retrieve shareKey for an encrypted file | |||
* @param \OC\Files\View $view | |||
* @param string $userId | |||
* @param \OCA\Encryption\Util $util | |||
* @param \OCA\Files_Encryption\Util $util | |||
* @param string $filePath | |||
* @return string file key or false | |||
* @note The sharekey returned is encrypted. Decryption |
@@ -35,8 +35,8 @@ class Migration { | |||
public function __construct() { | |||
$this->view = new \OC\Files\View(); | |||
$this->public_share_key_id = \OCA\Encryption\Helper::getPublicShareKeyId(); | |||
$this->recovery_key_id = \OCA\Encryption\Helper::getRecoveryKeyId(); | |||
$this->public_share_key_id = Helper::getPublicShareKeyId(); | |||
$this->recovery_key_id = Helper::getRecoveryKeyId(); | |||
} | |||
public function reorganizeFolderStructure() { |
@@ -30,11 +30,11 @@ | |||
* webui. | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
/** | |||
* Class Proxy | |||
* @package OCA\Encryption | |||
* @package OCA\Files_Encryption | |||
*/ | |||
class Proxy extends \OC_FileProxy { | |||
@@ -130,7 +130,7 @@ class Proxy extends \OC_FileProxy { | |||
$view = new \OC\Files\View('/'); | |||
// get relative path | |||
$relativePath = \OCA\Encryption\Helper::stripUserFilesPath($path); | |||
$relativePath = Helper::stripUserFilesPath($path); | |||
if (!isset($relativePath)) { | |||
return true; | |||
@@ -338,7 +338,7 @@ class Proxy extends \OC_FileProxy { | |||
} | |||
// get relative path | |||
$relativePath = \OCA\Encryption\Helper::stripUserFilesPath($path); | |||
$relativePath = Helper::stripUserFilesPath($path); | |||
// if path is empty we cannot resolve anything | |||
if (empty($relativePath)) { |
@@ -22,7 +22,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
/** | |||
* Class for handling encryption related session data | |||
@@ -72,8 +72,8 @@ class Session { | |||
Keymanager::setPublicKey($keypair['publicKey'], $publicShareKeyId); | |||
// Encrypt private key empty passphrase | |||
$cipher = \OCA\Encryption\Helper::getCipher(); | |||
$encryptedKey = \OCA\Encryption\Crypt::symmetricEncryptFileContent($keypair['privateKey'], '', $cipher); | |||
$cipher = Helper::getCipher(); | |||
$encryptedKey = Crypt::symmetricEncryptFileContent($keypair['privateKey'], '', $cipher); | |||
if ($encryptedKey) { | |||
Keymanager::setPrivateSystemKey($encryptedKey, $publicShareKeyId); | |||
} else { | |||
@@ -82,7 +82,7 @@ class Session { | |||
} | |||
if (\OCA\Encryption\Helper::isPublicAccess() && !self::getPublicSharePrivateKey()) { | |||
if (Helper::isPublicAccess() && !self::getPublicSharePrivateKey()) { | |||
// Disable encryption proxy to prevent recursive calls | |||
$proxyStatus = \OC_FileProxy::$enabled; | |||
\OC_FileProxy::$enabled = false; | |||
@@ -151,7 +151,7 @@ class Session { | |||
public function getInitialized() { | |||
if (!is_null(\OC::$server->getSession()->get('encryptionInitialized'))) { | |||
return \OC::$server->getSession()->get('encryptionInitialized'); | |||
} else if (\OCA\Encryption\Helper::isPublicAccess() && self::getPublicSharePrivateKey()) { | |||
} else if (Helper::isPublicAccess() && self::getPublicSharePrivateKey()) { | |||
return self::INIT_SUCCESSFUL; | |||
} else { | |||
return self::NOT_INITIALIZED; | |||
@@ -165,7 +165,7 @@ class Session { | |||
*/ | |||
public function getPrivateKey() { | |||
// return the public share private key if this is a public access | |||
if (\OCA\Encryption\Helper::isPublicAccess()) { | |||
if (Helper::isPublicAccess()) { | |||
return self::getPublicSharePrivateKey(); | |||
} else { | |||
if (!is_null(\OC::$server->getSession()->get('privateKey'))) { |
@@ -30,8 +30,9 @@ | |||
* and then fopen('crypt://streams/foo'); | |||
*/ | |||
namespace OCA\Encryption; | |||
use OCA\Encryption\Exception\EncryptionException; | |||
namespace OCA\Files_Encryption; | |||
use OCA\Files_Encryption\Exception\EncryptionException; | |||
/** | |||
* Provides 'crypt://' stream wrapper protocol. | |||
@@ -81,7 +82,7 @@ class Stream { | |||
private $rootView; // a fsview object set to '/' | |||
/** | |||
* @var \OCA\Encryption\Session | |||
* @var \OCA\Files_Encryption\Session | |||
*/ | |||
private $session; | |||
private $privateKey; | |||
@@ -92,7 +93,7 @@ class Stream { | |||
* @param int $options | |||
* @param string $opened_path | |||
* @return bool | |||
* @throw \OCA\Encryption\Exception\EncryptionException | |||
* @throw \OCA\Files_Encryption\Exception\EncryptionException | |||
*/ | |||
public function stream_open($path, $mode, $options, &$opened_path) { | |||
@@ -106,7 +107,7 @@ class Stream { | |||
$this->rootView = new \OC\Files\View('/'); | |||
} | |||
$this->session = new \OCA\Encryption\Session($this->rootView); | |||
$this->session = new Session($this->rootView); | |||
$this->privateKey = $this->session->getPrivateKey(); | |||
if ($this->privateKey === false) { | |||
@@ -162,7 +163,7 @@ class Stream { | |||
if($this->privateKey === false) { | |||
// if private key is not valid redirect user to a error page | |||
\OCA\Encryption\Helper::redirectToErrorPage($this->session); | |||
Helper::redirectToErrorPage($this->session); | |||
} | |||
$this->size = $this->rootView->filesize($this->rawPath); | |||
@@ -251,7 +252,7 @@ class Stream { | |||
/** | |||
* @param int $count | |||
* @return bool|string | |||
* @throws \OCA\Encryption\Exception\EncryptionException | |||
* @throws \OCA\Files_Encryption\Exception\EncryptionException | |||
*/ | |||
public function stream_read($count) { | |||
@@ -329,7 +330,7 @@ class Stream { | |||
// Fetch and decrypt keyfile | |||
// Fetch existing keyfile | |||
$util = new \OCA\Encryption\Util($this->rootView, $this->userId); | |||
$util = new Util($this->rootView, $this->userId); | |||
$this->encKeyfile = Keymanager::getFileKey($this->rootView, $util, $this->relPath); | |||
// If a keyfile already exists | |||
@@ -340,13 +341,13 @@ class Stream { | |||
// if there is no valid private key return false | |||
if ($this->privateKey === false) { | |||
// if private key is not valid redirect user to a error page | |||
\OCA\Encryption\Helper::redirectToErrorPage($this->session); | |||
Helper::redirectToErrorPage($this->session); | |||
return false; | |||
} | |||
if ($shareKey === false) { | |||
// if no share key is available redirect user to a error page | |||
\OCA\Encryption\Helper::redirectToErrorPage($this->session, \OCA\Encryption\Crypt::ENCRYPTION_NO_SHARE_KEY_FOUND); | |||
Helper::redirectToErrorPage($this->session, Crypt::ENCRYPTION_NO_SHARE_KEY_FOUND); | |||
return false; | |||
} | |||
@@ -367,7 +368,7 @@ class Stream { | |||
/** | |||
* write header at beginning of encrypted file | |||
* | |||
* @throws Exception\EncryptionException | |||
* @throws \OCA\Files_Encryption\Exception\EncryptionException | |||
*/ | |||
private function writeHeader() { | |||
@@ -589,7 +590,7 @@ class Stream { | |||
} | |||
// if private key is not valid redirect user to a error page | |||
\OCA\Encryption\Helper::redirectToErrorPage($this->session); | |||
Helper::redirectToErrorPage($this->session); | |||
} | |||
if ( |
@@ -23,7 +23,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Encryption; | |||
namespace OCA\Files_Encryption; | |||
/** | |||
* Class for utilities relating to encrypted file storage system | |||
@@ -83,7 +83,7 @@ class Util { | |||
// make sure that the owners home is mounted | |||
\OC\Files\Filesystem::initMountPoints($userId); | |||
if (\OCA\Encryption\Helper::isPublicAccess()) { | |||
if (Helper::isPublicAccess()) { | |||
$this->keyId = $this->publicShareKeyId; | |||
$this->isPublic = true; | |||
} else { | |||
@@ -277,7 +277,7 @@ class Util { | |||
if ($file !== "." && $file !== "..") { | |||
$filePath = $directory . '/' . $this->view->getRelativePath('/' . $file); | |||
$relPath = \OCA\Encryption\Helper::stripUserFilesPath($filePath); | |||
$relPath = Helper::stripUserFilesPath($filePath); | |||
// If the path is a directory, search | |||
// its contents | |||
@@ -451,13 +451,13 @@ class Util { | |||
} | |||
} | |||
fclose($stream); | |||
$relPath = \OCA\Encryption\Helper::stripUserFilesPath($path); | |||
$relPath = Helper::stripUserFilesPath($path); | |||
$shareKey = Keymanager::getShareKey($this->view, $this->keyId, $this, $relPath); | |||
if($shareKey===false) { | |||
\OC_FileProxy::$enabled = $proxyStatus; | |||
return $result; | |||
} | |||
$session = new \OCA\Encryption\Session($this->view); | |||
$session = new Session($this->view); | |||
$privateKey = $session->getPrivateKey(); | |||
$plainKeyfile = $this->decryptKeyfile($relPath, $privateKey); | |||
$plainKey = Crypt::multiKeyDecrypt($plainKeyfile, $shareKey, $privateKey); | |||
@@ -1040,7 +1040,7 @@ class Util { | |||
// Make sure that a share key is generated for the owner too | |||
list($owner, $ownerPath) = $this->getUidAndFilename($filePath); | |||
$ownerPath = \OCA\Encryption\Helper::stripPartialFileExtension($ownerPath); | |||
$ownerPath = Helper::stripPartialFileExtension($ownerPath); | |||
// always add owner to the list of users with access to the file | |||
$userIds = array($owner); | |||
@@ -1402,7 +1402,7 @@ class Util { | |||
if ($this->view->is_dir($this->userFilesDir . '/' . $filePath)) { | |||
$this->addRecoveryKeys($filePath . '/'); | |||
} else { | |||
$session = new \OCA\Encryption\Session(new \OC\Files\View('/')); | |||
$session = new Session(new \OC\Files\View('/')); | |||
$sharingEnabled = \OCP\Share::isEnabled(); | |||
$usersSharing = $this->getSharingUsersArray($sharingEnabled, $filePath); | |||
$this->setSharedFileKeyfiles($session, $usersSharing, $filePath); | |||
@@ -1559,10 +1559,10 @@ class Util { | |||
*/ | |||
public function initEncryption($params) { | |||
$session = new \OCA\Encryption\Session($this->view); | |||
$session = new Session($this->view); | |||
// we tried to initialize the encryption app for this session | |||
$session->setInitialized(\OCA\Encryption\Session::INIT_EXECUTED); | |||
$session->setInitialized(Session::INIT_EXECUTED); | |||
$encryptedKey = Keymanager::getPrivateKey($this->view, $params['uid']); | |||
@@ -1578,7 +1578,7 @@ class Util { | |||
} | |||
$session->setPrivateKey($privateKey); | |||
$session->setInitialized(\OCA\Encryption\Session::INIT_SUCCESSFUL); | |||
$session->setInitialized(Session::INIT_SUCCESSFUL); | |||
return $session; | |||
} | |||
@@ -1587,7 +1587,7 @@ class Util { | |||
* remove encryption related keys from the session | |||
*/ | |||
public function closeEncryptionSession() { | |||
$session = new \OCA\Encryption\Session($this->view); | |||
$session = new Session($this->view); | |||
$session->closeSession(); | |||
} | |||
@@ -12,7 +12,7 @@ $tmpl = new OCP\Template('files_encryption', 'settings-admin'); | |||
// Check if an adminRecovery account is enabled for recovering files after lost pwd | |||
$recoveryAdminEnabled = \OC::$server->getAppConfig()->getValue('files_encryption', 'recoveryAdminEnabled', '0'); | |||
$session = new \OCA\Encryption\Session(new \OC\Files\View('/')); | |||
$session = new \OCA\Files_Encryption\Session(new \OC\Files\View('/')); | |||
$initStatus = $session->getInitialized(); | |||
$tmpl->assign('recoveryEnabled', $recoveryAdminEnabled); |
@@ -13,8 +13,8 @@ $tmpl = new OCP\Template('files_encryption', 'settings-personal'); | |||
$user = \OCP\USER::getUser(); | |||
$view = new \OC\Files\View('/'); | |||
$util = new \OCA\Encryption\Util($view, $user); | |||
$session = new \OCA\Encryption\Session($view); | |||
$util = new \OCA\Files_Encryption\Util($view, $user); | |||
$session = new \OCA\Files_Encryption\Session($view); | |||
$privateKeySet = $session->getPrivateKey() !== false; | |||
// did we tried to initialize the keys for this session? |
@@ -4,7 +4,7 @@ | |||
<?php p($_['message']); ?> | |||
<br/> | |||
<?php if($_['errorCode'] === \OCA\Encryption\Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR): ?> | |||
<?php if($_['errorCode'] === \OCA\Files_Encryption\Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR): ?> | |||
<?php p($l->t('Go directly to your %spersonal settings%s.', array('<a href="'.$location.'">', '</a>'))); ?> | |||
<?php endif; ?> | |||
<br/> |
@@ -1,7 +1,7 @@ | |||
<form id="encryption" class="section"> | |||
<h2><?php p($l->t('Encryption')); ?></h2> | |||
<?php if($_["initStatus"] === \OCA\Encryption\Session::NOT_INITIALIZED): ?> | |||
<?php if($_["initStatus"] === \OCA\Files_Encryption\Session::NOT_INITIALIZED): ?> | |||
<?php p($l->t("Encryption App is enabled but your keys are not initialized, please log-out and log-in again")); ?> | |||
<?php else: ?> | |||
<p id="encryptionSetRecoveryKey"> |
@@ -1,11 +1,11 @@ | |||
<form id="encryption" class="section"> | |||
<h2><?php p( $l->t( 'Encryption' ) ); ?></h2> | |||
<?php if ( $_["initialized"] === \OCA\Encryption\Session::NOT_INITIALIZED ): ?> | |||
<?php if ( $_["initialized"] === \OCA\Files_Encryption\Session::NOT_INITIALIZED ): ?> | |||
<?php p($l->t("Encryption App is enabled but your keys are not initialized, please log-out and log-in again")); ?> | |||
<?php elseif ( $_["initialized"] === \OCA\Encryption\Session::INIT_EXECUTED ): ?> | |||
<?php elseif ( $_["initialized"] === \OCA\Files_Encryption\Session::INIT_EXECUTED ): ?> | |||
<p> | |||
<a name="changePKPasswd" /> | |||
<label for="changePrivateKeyPasswd"> | |||
@@ -37,7 +37,7 @@ | |||
<span class="msg"></span> | |||
</p> | |||
<?php elseif ( $_["recoveryEnabled"] && $_["privateKeySet"] && $_["initialized"] === \OCA\Encryption\Session::INIT_SUCCESSFUL ): ?> | |||
<?php elseif ( $_["recoveryEnabled"] && $_["privateKeySet"] && $_["initialized"] === \OCA\Files_Encryption\Session::INIT_SUCCESSFUL ): ?> | |||
<br /> | |||
<p id="userEnableRecovery"> | |||
<label for="userEnableRecovery"><?php p( $l->t( "Enable password recovery:" ) ); ?></label> |
@@ -7,12 +7,12 @@ | |||
* See the COPYING-README file. | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Crypt | |||
* Class Crypt | |||
*/ | |||
class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Crypt extends TestCase { | |||
const TEST_ENCRYPTION_CRYPT_USER1 = "test-crypt-user1"; | |||
@@ -23,7 +23,7 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
public $dataUrl; | |||
public $dataShort; | |||
/** | |||
* @var OC\Files\View | |||
* @var \OC\Files\View | |||
*/ | |||
public $view; | |||
public $legacyEncryptedData; | |||
@@ -34,16 +34,16 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
parent::setUpBeforeClass(); | |||
// create test user | |||
self::loginHelper(\Test_Encryption_Crypt::TEST_ENCRYPTION_CRYPT_USER1, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_CRYPT_USER1, true); | |||
} | |||
protected function setUp() { | |||
parent::setUp(); | |||
// set user id | |||
self::loginHelper(\Test_Encryption_Crypt::TEST_ENCRYPTION_CRYPT_USER1); | |||
$this->userId = \Test_Encryption_Crypt::TEST_ENCRYPTION_CRYPT_USER1; | |||
$this->pass = \Test_Encryption_Crypt::TEST_ENCRYPTION_CRYPT_USER1; | |||
self::loginHelper(self::TEST_ENCRYPTION_CRYPT_USER1); | |||
$this->userId = self::TEST_ENCRYPTION_CRYPT_USER1; | |||
$this->pass = self::TEST_ENCRYPTION_CRYPT_USER1; | |||
// set content for encrypting / decrypting in tests | |||
$this->dataLong = file_get_contents(__DIR__ . '/../lib/crypt.php'); | |||
@@ -52,16 +52,16 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->legacyData = __DIR__ . '/legacy-text.txt'; | |||
$this->legacyEncryptedData = __DIR__ . '/legacy-encrypted-text.txt'; | |||
$this->legacyEncryptedDataKey = __DIR__ . '/encryption.key'; | |||
$this->randomKey = Encryption\Crypt::generateKey(); | |||
$this->randomKey = \OCA\Files_Encryption\Crypt::generateKey(); | |||
$keypair = Encryption\Crypt::createKeypair(); | |||
$keypair = \OCA\Files_Encryption\Crypt::createKeypair(); | |||
$this->genPublicKey = $keypair['publicKey']; | |||
$this->genPrivateKey = $keypair['privateKey']; | |||
$this->view = new \OC\Files\View('/'); | |||
// remember files_trashbin state | |||
$this->stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
$this->stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we don't want to tests with app files_trashbin enabled | |||
\OC_App::disable('files_trashbin'); | |||
@@ -70,9 +70,9 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
protected function tearDown() { | |||
// reset app files_trashbin | |||
if ($this->stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} else { | |||
OC_App::disable('files_trashbin'); | |||
\OC_App::disable('files_trashbin'); | |||
} | |||
$this->assertTrue(\OC_FileProxy::$enabled); | |||
@@ -83,7 +83,7 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
public static function tearDownAfterClass() { | |||
// cleanup test user | |||
\OC_User::deleteUser(\Test_Encryption_Crypt::TEST_ENCRYPTION_CRYPT_USER1); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_CRYPT_USER1); | |||
parent::tearDownAfterClass(); | |||
} | |||
@@ -95,7 +95,7 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
# TODO: use more accurate (larger) string length for test confirmation | |||
$key = Encryption\Crypt::generateKey(); | |||
$key = \OCA\Files_Encryption\Crypt::generateKey(); | |||
$this->assertTrue(strlen($key) > 16); | |||
@@ -104,16 +104,16 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
public function testDecryptPrivateKey() { | |||
// test successful decrypt | |||
$crypted = Encryption\Crypt::symmetricEncryptFileContent($this->genPrivateKey, 'hat'); | |||
$crypted = \OCA\Files_Encryption\Crypt::symmetricEncryptFileContent($this->genPrivateKey, 'hat'); | |||
$header = Encryption\Crypt::generateHeader(); | |||
$header = \OCA\Files_Encryption\Crypt::generateHeader(); | |||
$decrypted = Encryption\Crypt::decryptPrivateKey($header . $crypted, 'hat'); | |||
$decrypted = \OCA\Files_Encryption\Crypt::decryptPrivateKey($header . $crypted, 'hat'); | |||
$this->assertEquals($this->genPrivateKey, $decrypted); | |||
//test private key decrypt with wrong password | |||
$wrongPasswd = Encryption\Crypt::decryptPrivateKey($crypted, 'hat2'); | |||
$wrongPasswd = \OCA\Files_Encryption\Crypt::decryptPrivateKey($crypted, 'hat2'); | |||
$this->assertEquals(false, $wrongPasswd); | |||
@@ -127,12 +127,12 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
# TODO: search in keyfile for actual content as IV will ensure this test always passes | |||
$crypted = Encryption\Crypt::symmetricEncryptFileContent($this->dataShort, 'hat'); | |||
$crypted = \OCA\Files_Encryption\Crypt::symmetricEncryptFileContent($this->dataShort, 'hat'); | |||
$this->assertNotEquals($this->dataShort, $crypted); | |||
$decrypt = Encryption\Crypt::symmetricDecryptFileContent($crypted, 'hat'); | |||
$decrypt = \OCA\Files_Encryption\Crypt::symmetricDecryptFileContent($crypted, 'hat'); | |||
$this->assertEquals($this->dataShort, $decrypt); | |||
@@ -145,12 +145,12 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
# TODO: search in keyfile for actual content as IV will ensure this test always passes | |||
$crypted = Encryption\Crypt::symmetricEncryptFileContent($this->dataShort, 'hat', 'AES-128-CFB'); | |||
$crypted = \OCA\Files_Encryption\Crypt::symmetricEncryptFileContent($this->dataShort, 'hat', 'AES-128-CFB'); | |||
$this->assertNotEquals($this->dataShort, $crypted); | |||
$decrypt = Encryption\Crypt::symmetricDecryptFileContent($crypted, 'hat', 'AES-128-CFB'); | |||
$decrypt = \OCA\Files_Encryption\Crypt::symmetricDecryptFileContent($crypted, 'hat', 'AES-128-CFB'); | |||
$this->assertEquals($this->dataShort, $decrypt); | |||
@@ -348,7 +348,7 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
// remove the header to check if we can also decrypt old files without a header, | |||
// this files should fall back to AES-128 | |||
$cryptedWithoutHeader = substr($retreivedCryptedFile, Encryption\Crypt::BLOCKSIZE); | |||
$cryptedWithoutHeader = substr($retreivedCryptedFile, \OCA\Files_Encryption\Crypt::BLOCKSIZE); | |||
$this->view->file_put_contents($this->userId . '/files/' . $filename, $cryptedWithoutHeader); | |||
// Re-enable proxy - our work is done | |||
@@ -367,13 +367,13 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
public function testIsEncryptedContent() { | |||
$this->assertFalse(Encryption\Crypt::isCatfileContent($this->dataUrl)); | |||
$this->assertFalse(\OCA\Files_Encryption\Crypt::isCatfileContent($this->dataUrl)); | |||
$this->assertFalse(Encryption\Crypt::isCatfileContent($this->legacyEncryptedData)); | |||
$this->assertFalse(\OCA\Files_Encryption\Crypt::isCatfileContent($this->legacyEncryptedData)); | |||
$keyfileContent = Encryption\Crypt::symmetricEncryptFileContent($this->dataUrl, 'hat', 'AES-128-CFB'); | |||
$keyfileContent = \OCA\Files_Encryption\Crypt::symmetricEncryptFileContent($this->dataUrl, 'hat', 'AES-128-CFB'); | |||
$this->assertTrue(Encryption\Crypt::isCatfileContent($keyfileContent)); | |||
$this->assertTrue(\OCA\Files_Encryption\Crypt::isCatfileContent($keyfileContent)); | |||
} | |||
@@ -384,7 +384,7 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
# TODO: search in keyfile for actual content as IV will ensure this test always passes | |||
$pair1 = Encryption\Crypt::createKeypair(); | |||
$pair1 = \OCA\Files_Encryption\Crypt::createKeypair(); | |||
$this->assertEquals(2, count($pair1)); | |||
@@ -393,12 +393,12 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->assertTrue(strlen($pair1['privateKey']) > 1); | |||
$crypted = Encryption\Crypt::multiKeyEncrypt($this->dataShort, array($pair1['publicKey'])); | |||
$crypted = \OCA\Files_Encryption\Crypt::multiKeyEncrypt($this->dataShort, array($pair1['publicKey'])); | |||
$this->assertNotEquals($this->dataShort, $crypted['data']); | |||
$decrypt = Encryption\Crypt::multiKeyDecrypt($crypted['data'], $crypted['keys'][0], $pair1['privateKey']); | |||
$decrypt = \OCA\Files_Encryption\Crypt::multiKeyDecrypt($crypted['data'], $crypted['keys'][0], $pair1['privateKey']); | |||
$this->assertEquals($this->dataShort, $decrypt); | |||
@@ -529,7 +529,7 @@ class Test_Encryption_Crypt extends \OCA\Files_Encryption\Tests\TestCase { | |||
// relogin | |||
$params['uid'] = $this->userId; | |||
$params['password'] = 'test'; | |||
OCA\Encryption\Hooks::login($params); | |||
\OCA\Files_Encryption\Hooks::login($params); | |||
// Get file decrypted contents | |||
$newDecrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $filename); |
@@ -6,35 +6,35 @@ | |||
* See the COPYING-README file. | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Helper | |||
* Class Helper | |||
*/ | |||
class Test_Encryption_Helper extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Helper extends TestCase { | |||
const TEST_ENCRYPTION_HELPER_USER1 = "test-helper-user1"; | |||
const TEST_ENCRYPTION_HELPER_USER2 = "test-helper-user2"; | |||
protected function setUpUsers() { | |||
// create test user | |||
self::loginHelper(\Test_Encryption_Helper::TEST_ENCRYPTION_HELPER_USER2, true); | |||
self::loginHelper(\Test_Encryption_Helper::TEST_ENCRYPTION_HELPER_USER1, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_HELPER_USER2, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_HELPER_USER1, true); | |||
} | |||
protected function cleanUpUsers() { | |||
// cleanup test user | |||
\OC_User::deleteUser(\Test_Encryption_Helper::TEST_ENCRYPTION_HELPER_USER1); | |||
\OC_User::deleteUser(\Test_Encryption_Helper::TEST_ENCRYPTION_HELPER_USER2); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_HELPER_USER1); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_HELPER_USER2); | |||
} | |||
public static function setupHooks() { | |||
// Filesystem related hooks | |||
\OCA\Encryption\Helper::registerFilesystemHooks(); | |||
\OCA\Files_Encryption\Helper::registerFilesystemHooks(); | |||
// clear and register hooks | |||
\OC_FileProxy::clearProxies(); | |||
\OC_FileProxy::register(new OCA\Encryption\Proxy()); | |||
\OC_FileProxy::register(new \OCA\Files_Encryption\Proxy()); | |||
} | |||
public static function tearDownAfterClass() { | |||
@@ -49,13 +49,13 @@ class Test_Encryption_Helper extends \OCA\Files_Encryption\Tests\TestCase { | |||
$partFilename = 'testfile.txt.part'; | |||
$filename = 'testfile.txt'; | |||
$this->assertTrue(Encryption\Helper::isPartialFilePath($partFilename)); | |||
$this->assertTrue(\OCA\Files_Encryption\Helper::isPartialFilePath($partFilename)); | |||
$this->assertEquals('testfile.txt', Encryption\Helper::stripPartialFileExtension($partFilename)); | |||
$this->assertEquals('testfile.txt', \OCA\Files_Encryption\Helper::stripPartialFileExtension($partFilename)); | |||
$this->assertFalse(Encryption\Helper::isPartialFilePath($filename)); | |||
$this->assertFalse(\OCA\Files_Encryption\Helper::isPartialFilePath($filename)); | |||
$this->assertEquals('testfile.txt', Encryption\Helper::stripPartialFileExtension($filename)); | |||
$this->assertEquals('testfile.txt', \OCA\Files_Encryption\Helper::stripPartialFileExtension($filename)); | |||
} | |||
@@ -67,13 +67,13 @@ class Test_Encryption_Helper extends \OCA\Files_Encryption\Tests\TestCase { | |||
$partFilename = 'testfile.txt.ocTransferId643653835.part'; | |||
$filename = 'testfile.txt'; | |||
$this->assertTrue(Encryption\Helper::isPartialFilePath($partFilename)); | |||
$this->assertTrue(\OCA\Files_Encryption\Helper::isPartialFilePath($partFilename)); | |||
$this->assertEquals('testfile.txt', Encryption\Helper::stripPartialFileExtension($partFilename)); | |||
$this->assertEquals('testfile.txt', \OCA\Files_Encryption\Helper::stripPartialFileExtension($partFilename)); | |||
$this->assertFalse(Encryption\Helper::isPartialFilePath($filename)); | |||
$this->assertFalse(\OCA\Files_Encryption\Helper::isPartialFilePath($filename)); | |||
$this->assertEquals('testfile.txt', Encryption\Helper::stripPartialFileExtension($filename)); | |||
$this->assertEquals('testfile.txt', \OCA\Files_Encryption\Helper::stripPartialFileExtension($filename)); | |||
} | |||
function testGetPathToRealFile() { | |||
@@ -85,8 +85,8 @@ class Test_Encryption_Helper extends \OCA\Files_Encryption\Tests\TestCase { | |||
$versionPath = "/user/files_versions/foo/bar/test.txt.v456756835"; | |||
$cachePath = "/user/cache/transferid636483/foo/bar/test.txt"; | |||
$this->assertEquals($relativePath, Encryption\Helper::getPathToRealFile($versionPath)); | |||
$this->assertEquals($relativePath, Encryption\Helper::getPathToRealFile($cachePath)); | |||
$this->assertEquals($relativePath, \OCA\Files_Encryption\Helper::getPathToRealFile($versionPath)); | |||
$this->assertEquals($relativePath, \OCA\Files_Encryption\Helper::getPathToRealFile($cachePath)); | |||
} | |||
function testGetUser() { | |||
@@ -100,20 +100,20 @@ class Test_Encryption_Helper extends \OCA\Files_Encryption\Tests\TestCase { | |||
self::loginHelper(self::TEST_ENCRYPTION_HELPER_USER1); | |||
// if we are logged-in every path should return the currently logged-in user | |||
$this->assertEquals(self::TEST_ENCRYPTION_HELPER_USER1, Encryption\Helper::getUser($path3)); | |||
$this->assertEquals(self::TEST_ENCRYPTION_HELPER_USER1, \OCA\Files_Encryption\Helper::getUser($path3)); | |||
// now log out | |||
self::logoutHelper(); | |||
// now we should only get the user from /user/files and user/cache paths | |||
$this->assertEquals(self::TEST_ENCRYPTION_HELPER_USER1, Encryption\Helper::getUser($path1)); | |||
$this->assertEquals(self::TEST_ENCRYPTION_HELPER_USER1, Encryption\Helper::getUser($path2)); | |||
$this->assertEquals(self::TEST_ENCRYPTION_HELPER_USER1, \OCA\Files_Encryption\Helper::getUser($path1)); | |||
$this->assertEquals(self::TEST_ENCRYPTION_HELPER_USER1, \OCA\Files_Encryption\Helper::getUser($path2)); | |||
$this->assertFalse(Encryption\Helper::getUser($path3)); | |||
$this->assertFalse(Encryption\Helper::getUser($path4)); | |||
$this->assertFalse(\OCA\Files_Encryption\Helper::getUser($path3)); | |||
$this->assertFalse(\OCA\Files_Encryption\Helper::getUser($path4)); | |||
// Log-in again | |||
self::loginHelper(\Test_Encryption_Helper::TEST_ENCRYPTION_HELPER_USER1); | |||
self::loginHelper(self::TEST_ENCRYPTION_HELPER_USER1); | |||
self::cleanUpUsers(); | |||
} | |||
@@ -20,13 +20,13 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Hooks | |||
* Class Hooks | |||
* this class provide basic hook app tests | |||
*/ | |||
class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Hooks extends TestCase { | |||
const TEST_ENCRYPTION_HOOKS_USER1 = "test-encryption-hooks-user1.dot"; | |||
const TEST_ENCRYPTION_HOOKS_USER2 = "test-encryption-hooks-user2.dot"; | |||
@@ -64,20 +64,20 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
); | |||
// create test user | |||
self::loginHelper(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1, true); | |||
self::loginHelper(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_HOOKS_USER1, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_HOOKS_USER2, true); | |||
} | |||
protected function setUp() { | |||
parent::setUp(); | |||
// set user id | |||
self::loginHelper(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::setUserId(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1); | |||
self::loginHelper(self::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_HOOKS_USER1); | |||
// init filesystem view | |||
$this->user1View = new \OC\Files\View('/'. \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1 . '/files'); | |||
$this->user2View = new \OC\Files\View('/'. \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2 . '/files'); | |||
$this->user1View = new \OC\Files\View('/'. self::TEST_ENCRYPTION_HOOKS_USER1 . '/files'); | |||
$this->user2View = new \OC\Files\View('/'. self::TEST_ENCRYPTION_HOOKS_USER2 . '/files'); | |||
$this->rootView = new \OC\Files\View('/'); | |||
// init short data | |||
@@ -89,8 +89,8 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
public static function tearDownAfterClass() { | |||
// cleanup test user | |||
\OC_User::deleteUser(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::deleteUser(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_HOOKS_USER2); | |||
parent::tearDownAfterClass(); | |||
} | |||
@@ -104,7 +104,7 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->assertTrue(is_array($row)); | |||
// disabling the app should delete all user specific settings | |||
\OCA\Encryption\Hooks::preDisable(array('app' => 'files_encryption')); | |||
\OCA\Files_Encryption\Hooks::preDisable(array('app' => 'files_encryption')); | |||
// check if user specific settings for the encryption app are really gone | |||
$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*preferences` WHERE `appid` = ?'); | |||
@@ -121,7 +121,7 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
function testDeleteHooks() { | |||
// remember files_trashbin state | |||
$stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
$stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we want to tests with app files_trashbin disabled | |||
\OC_App::disable('files_trashbin'); | |||
@@ -134,14 +134,14 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// check if all keys are generated | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
self::logoutHelper(); | |||
self::loginHelper(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2); | |||
\OC_User::setUserId(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2); | |||
self::loginHelper(self::TEST_ENCRYPTION_HOOKS_USER2); | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_HOOKS_USER2); | |||
$this->user2View->file_put_contents($this->filename, $this->data); | |||
@@ -149,7 +149,7 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// check if all keys are generated | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
@@ -164,7 +164,7 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// all keys should still exist | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
@@ -176,33 +176,33 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// check if keys from user2 are really deleted | |||
$this->assertFalse($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
$this->assertFalse($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
// but user1 keys should still exist | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
if ($stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} | |||
else { | |||
OC_App::disable('files_trashbin'); | |||
\OC_App::disable('files_trashbin'); | |||
} | |||
} | |||
function testDeleteHooksForSharedFiles() { | |||
self::logoutHelper(); | |||
self::loginHelper(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::setUserId(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1); | |||
self::loginHelper(self::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_HOOKS_USER1); | |||
// remember files_trashbin state | |||
$stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
$stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we want to tests with app files_trashbin disabled | |||
\OC_App::disable('files_trashbin'); | |||
@@ -215,7 +215,7 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// check if all keys are generated | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
@@ -231,11 +231,11 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// check if new share key exists | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
self::logoutHelper(); | |||
self::loginHelper(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2); | |||
\OC_User::setUserId(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2); | |||
self::loginHelper(self::TEST_ENCRYPTION_HOOKS_USER2); | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_HOOKS_USER2); | |||
// user2 update the shared file | |||
$this->user2View->file_put_contents($this->filename, $this->data); | |||
@@ -243,7 +243,7 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// keys should be stored at user1s dir, not in user2s | |||
$this->assertFalse($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
$this->assertFalse($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER2 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
@@ -255,24 +255,24 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
// share key for user2 from user1s home should be gone, all other keys should still exists | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER1 . '.shareKey')); | |||
$this->assertFalse($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' | |||
. $this->filename . '/' . \Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
. $this->filename . '/' . self::TEST_ENCRYPTION_HOOKS_USER2 . '.shareKey')); | |||
$this->assertTrue($this->rootView->file_exists( | |||
self::TEST_ENCRYPTION_HOOKS_USER1 . '/files_encryption/keys/' . $this->filename . '/fileKey')); | |||
// cleanup | |||
self::logoutHelper(); | |||
self::loginHelper(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::setUserId(\Test_Encryption_Hooks::TEST_ENCRYPTION_HOOKS_USER1); | |||
self::loginHelper(self::TEST_ENCRYPTION_HOOKS_USER1); | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_HOOKS_USER1); | |||
if ($stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} | |||
else { | |||
OC_App::disable('files_trashbin'); | |||
\OC_App::disable('files_trashbin'); | |||
} | |||
} | |||
@@ -407,35 +407,35 @@ class Test_Encryption_Hooks extends \OCA\Files_Encryption\Tests\TestCase { | |||
$view = new \OC\Files\View(); | |||
// set user password for the first time | |||
\OCA\Encryption\Hooks::postCreateUser(array('uid' => 'newUser', 'password' => 'newUserPassword')); | |||
\OCA\Files_Encryption\Hooks::postCreateUser(array('uid' => 'newUser', 'password' => 'newUserPassword')); | |||
$this->assertTrue($view->file_exists(\OCA\Encryption\Keymanager::getPublicKeyPath() . '/newUser.publicKey')); | |||
$this->assertTrue($view->file_exists(\OCA\Files_Encryption\Keymanager::getPublicKeyPath() . '/newUser.publicKey')); | |||
$this->assertTrue($view->file_exists('newUser/files_encryption/newUser.privateKey')); | |||
// check if we are able to decrypt the private key | |||
$encryptedKey = \OCA\Encryption\Keymanager::getPrivateKey($view, 'newUser'); | |||
$privateKey = \OCA\Encryption\Crypt::decryptPrivateKey($encryptedKey, 'newUserPassword'); | |||
$encryptedKey = \OCA\Files_Encryption\Keymanager::getPrivateKey($view, 'newUser'); | |||
$privateKey = \OCA\Files_Encryption\Crypt::decryptPrivateKey($encryptedKey, 'newUserPassword'); | |||
$this->assertTrue(is_string($privateKey)); | |||
// change the password before the user logged-in for the first time, | |||
// we can replace the encryption keys | |||
\OCA\Encryption\Hooks::setPassphrase(array('uid' => 'newUser', 'password' => 'passwordChanged')); | |||
\OCA\Files_Encryption\Hooks::setPassphrase(array('uid' => 'newUser', 'password' => 'passwordChanged')); | |||
$encryptedKey = \OCA\Encryption\Keymanager::getPrivateKey($view, 'newUser'); | |||
$privateKey = \OCA\Encryption\Crypt::decryptPrivateKey($encryptedKey, 'passwordChanged'); | |||
$encryptedKey = \OCA\Files_Encryption\Keymanager::getPrivateKey($view, 'newUser'); | |||
$privateKey = \OCA\Files_Encryption\Crypt::decryptPrivateKey($encryptedKey, 'passwordChanged'); | |||
$this->assertTrue(is_string($privateKey)); | |||
// now create a files folder to simulate a already used account | |||
$view->mkdir('/newUser/files'); | |||
// change the password after the user logged in, now the password should not change | |||
\OCA\Encryption\Hooks::setPassphrase(array('uid' => 'newUser', 'password' => 'passwordChanged2')); | |||
\OCA\Files_Encryption\Hooks::setPassphrase(array('uid' => 'newUser', 'password' => 'passwordChanged2')); | |||
$encryptedKey = \OCA\Encryption\Keymanager::getPrivateKey($view, 'newUser'); | |||
$privateKey = \OCA\Encryption\Crypt::decryptPrivateKey($encryptedKey, 'passwordChanged2'); | |||
$encryptedKey = \OCA\Files_Encryption\Keymanager::getPrivateKey($view, 'newUser'); | |||
$privateKey = \OCA\Files_Encryption\Crypt::decryptPrivateKey($encryptedKey, 'passwordChanged2'); | |||
$this->assertFalse($privateKey); | |||
$privateKey = \OCA\Encryption\Crypt::decryptPrivateKey($encryptedKey, 'passwordChanged'); | |||
$privateKey = \OCA\Files_Encryption\Crypt::decryptPrivateKey($encryptedKey, 'passwordChanged'); | |||
$this->assertTrue(is_string($privateKey)); | |||
} |
@@ -6,12 +6,12 @@ | |||
* See the COPYING-README file. | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Keymanager | |||
* Class Keymanager | |||
*/ | |||
class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Keymanager extends TestCase { | |||
const TEST_USER = "test-keymanager-user.dot"; | |||
@@ -19,7 +19,7 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
public $pass; | |||
public static $stateFilesTrashbin; | |||
/** | |||
* @var OC\Files\View | |||
* @var \OC\Files\View | |||
*/ | |||
public $view; | |||
public $randomKey; | |||
@@ -32,14 +32,14 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
\OC_FileProxy::$enabled = false; | |||
// remember files_trashbin state | |||
self::$stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
self::$stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we don't want to tests with app files_trashbin enabled | |||
\OC_App::disable('files_trashbin'); | |||
// create test user | |||
\OC_User::deleteUser(\Test_Encryption_Keymanager::TEST_USER); | |||
parent::loginHelper(\Test_Encryption_Keymanager::TEST_USER, true); | |||
\OC_User::deleteUser(self::TEST_USER); | |||
parent::loginHelper(self::TEST_USER, true); | |||
} | |||
protected function setUp() { | |||
@@ -50,24 +50,24 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->dataUrl = __DIR__ . '/../lib/crypt.php'; | |||
$this->legacyData = __DIR__ . '/legacy-text.txt'; | |||
$this->legacyEncryptedData = __DIR__ . '/legacy-encrypted-text.txt'; | |||
$this->randomKey = Encryption\Crypt::generateKey(); | |||
$this->randomKey = \OCA\Files_Encryption\Crypt::generateKey(); | |||
$keypair = Encryption\Crypt::createKeypair(); | |||
$keypair = \OCA\Files_Encryption\Crypt::createKeypair(); | |||
$this->genPublicKey = $keypair['publicKey']; | |||
$this->genPrivateKey = $keypair['privateKey']; | |||
$this->view = new \OC\Files\View('/'); | |||
self::loginHelper(Test_Encryption_Keymanager::TEST_USER); | |||
$this->userId = \Test_Encryption_Keymanager::TEST_USER; | |||
$this->pass = \Test_Encryption_Keymanager::TEST_USER; | |||
self::loginHelper(self::TEST_USER); | |||
$this->userId = self::TEST_USER; | |||
$this->pass = self::TEST_USER; | |||
$userHome = \OC_User::getHome($this->userId); | |||
$this->dataDir = str_replace('/' . $this->userId, '', $userHome); | |||
} | |||
function tearDown() { | |||
$this->view->deleteAll('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys'); | |||
$this->view->deleteAll('/' . self::TEST_USER . '/files_encryption/keys'); | |||
parent::tearDown(); | |||
} | |||
@@ -75,10 +75,10 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
\OC_FileProxy::$enabled = true; | |||
// cleanup test user | |||
\OC_User::deleteUser(\Test_Encryption_Keymanager::TEST_USER); | |||
\OC_User::deleteUser(self::TEST_USER); | |||
// reset app files_trashbin | |||
if (self::$stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} | |||
parent::tearDownAfterClass(); | |||
@@ -89,9 +89,9 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function testGetPrivateKey() { | |||
$key = Encryption\Keymanager::getPrivateKey($this->view, $this->userId); | |||
$key = \OCA\Files_Encryption\Keymanager::getPrivateKey($this->view, $this->userId); | |||
$privateKey = Encryption\Crypt::decryptPrivateKey($key, $this->pass); | |||
$privateKey = \OCA\Files_Encryption\Crypt::decryptPrivateKey($key, $this->pass); | |||
$res = openssl_pkey_get_private($privateKey); | |||
@@ -108,7 +108,7 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function testGetPublicKey() { | |||
$publiceKey = Encryption\Keymanager::getPublicKey($this->view, $this->userId); | |||
$publiceKey = \OCA\Files_Encryption\Keymanager::getPublicKey($this->view, $this->userId); | |||
$res = openssl_pkey_get_public($publiceKey); | |||
@@ -128,7 +128,7 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
$file = 'unittest-' . $this->getUniqueID() . '.txt'; | |||
$util = new Encryption\Util($this->view, $this->userId); | |||
$util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
// Disable encryption proxy to prevent recursive calls | |||
$proxyStatus = \OC_FileProxy::$enabled; | |||
@@ -136,7 +136,7 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->view->file_put_contents($this->userId . '/files/' . $file, $this->dataShort); | |||
Encryption\Keymanager::setFileKey($this->view, $util, $file, $key); | |||
\OCA\Files_Encryption\Keymanager::setFileKey($this->view, $util, $file, $key); | |||
$this->assertTrue($this->view->file_exists('/' . $this->userId . '/files_encryption/keys/' . $file . '/fileKey')); | |||
@@ -154,7 +154,7 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
$key = "dummy key"; | |||
Encryption\Keymanager::setPrivateKey($key, 'dummyUser'); | |||
\OCA\Files_Encryption\Keymanager::setPrivateKey($key, 'dummyUser'); | |||
$this->assertTrue($this->view->file_exists('/dummyUser/files_encryption/dummyUser.privateKey')); | |||
@@ -169,13 +169,13 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
$key = "dummy key"; | |||
$keyName = "myDummyKey"; | |||
$encHeader = Encryption\Crypt::generateHeader(); | |||
$encHeader = \OCA\Files_Encryption\Crypt::generateHeader(); | |||
Encryption\Keymanager::setPrivateSystemKey($key, $keyName); | |||
\OCA\Files_Encryption\Keymanager::setPrivateSystemKey($key, $keyName); | |||
$this->assertTrue($this->view->file_exists('/files_encryption/' . $keyName . '.privateKey')); | |||
$result = Encryption\Keymanager::getPrivateSystemKey($keyName); | |||
$result = \OCA\Files_Encryption\Keymanager::getPrivateSystemKey($keyName); | |||
$this->assertSame($encHeader . $key, $result); | |||
@@ -189,7 +189,7 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function testGetUserKeys() { | |||
$keys = Encryption\Keymanager::getUserKeys($this->view, $this->userId); | |||
$keys = \OCA\Files_Encryption\Keymanager::getUserKeys($this->view, $this->userId); | |||
$resPublic = openssl_pkey_get_public($keys['publicKey']); | |||
@@ -199,7 +199,7 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->assertArrayHasKey('key', $sslInfoPublic); | |||
$privateKey = Encryption\Crypt::decryptPrivateKey($keys['privateKey'], $this->pass); | |||
$privateKey = \OCA\Files_Encryption\Crypt::decryptPrivateKey($keys['privateKey'], $this->pass); | |||
$resPrivate = openssl_pkey_get_private($privateKey); | |||
@@ -215,85 +215,85 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function testRecursiveDelShareKeysFolder() { | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files/folder1'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files/folder1/existingFile.txt', 'data'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files/folder1'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files/folder1/existingFile.txt', 'data'); | |||
// create folder structure for some dummy share key files | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/existingFile.txt'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file2'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/file2'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/subsubfolder'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/subsubfolder/file1'); | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/subsubfolder/file2'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/existingFile.txt'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/file2'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/file2'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/subsubfolder'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/subsubfolder/file1'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/subsubfolder/file2'); | |||
// create some dummy share keys | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/existingFile.txt/user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/existingFile.txt/' . Test_Encryption_Keymanager::TEST_USER . '.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/user1.test.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/test-keymanager-userxdot.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/userx.' . Test_Encryption_Keymanager::TEST_USER . '.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/' . Test_Encryption_Keymanager::TEST_USER . '.userx.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/user1.' . Test_Encryption_Keymanager::TEST_USER . '.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/' . Test_Encryption_Keymanager::TEST_USER . '.user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file2/user2.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file2/user3.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/file2/user3.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/subsubfolder/file1/user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/subsubfolder/file2/user2.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/subsubfolder/file2/user3.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/existingFile.txt/user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/existingFile.txt/' . self::TEST_USER . '.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/user1.test.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/test-keymanager-userxdot.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/userx.' . self::TEST_USER . '.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/' . self::TEST_USER . '.userx.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/user1.' . self::TEST_USER . '.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/' . self::TEST_USER . '.user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file2/user2.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/file2/user3.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/file2/user3.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/subsubfolder/file1/user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/subsubfolder/file2/user2.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/subsubfolder/file2/user3.shareKey', 'data'); | |||
// recursive delete share keys from user1 and user2 | |||
Encryption\Keymanager::delShareKey($this->view, | |||
array('user1', 'user2', Test_Encryption_Keymanager::TEST_USER), | |||
Encryption\Keymanager::getKeyPath($this->view, new Encryption\Util($this->view, Test_Encryption_Keymanager::TEST_USER), '/folder1'), | |||
Test_Encryption_Keymanager::TEST_USER, | |||
\OCA\Files_Encryption\Keymanager::delShareKey($this->view, | |||
array('user1', 'user2', self::TEST_USER), | |||
\OCA\Files_Encryption\Keymanager::getKeyPath($this->view, new \OCA\Files_Encryption\Util($this->view, self::TEST_USER), '/folder1'), | |||
self::TEST_USER, | |||
'/folder1'); | |||
// check if share keys from user1 and user2 are deleted | |||
$this->assertFalse($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/existingFile.txt/user1.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/existingFile.txt/user1.shareKey')); | |||
$this->assertFalse($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/file1/user1.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/file1/user1.shareKey')); | |||
$this->assertFalse($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/file2/user2.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/file2/user2.shareKey')); | |||
$this->assertFalse($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/subfolder/subsubfolder/file1/user1.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/subfolder/subsubfolder/file1/user1.shareKey')); | |||
$this->assertFalse($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/subfolder/subsubfolder/file2/user2.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/subfolder/subsubfolder/file2/user2.shareKey')); | |||
// check if share keys from user3 still exists | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file2/user3.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/file2/user3.shareKey')); | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/subsubfolder/file2/user3.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/subsubfolder/file2/user3.shareKey')); | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/subfolder/file2/user3.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/subfolder/file2/user3.shareKey')); | |||
// check if share keys for user or file with similar name | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/user1.test.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/user1.test.shareKey')); | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/test-keymanager-userxdot.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/test-keymanager-userxdot.shareKey')); | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/' . Test_Encryption_Keymanager::TEST_USER . '.userx.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/' . self::TEST_USER . '.userx.shareKey')); | |||
// FIXME: this case currently cannot be distinguished, needs further fixing | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/userx.' . Test_Encryption_Keymanager::TEST_USER . '.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/userx.' . self::TEST_USER . '.shareKey')); | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/user1.' . Test_Encryption_Keymanager::TEST_USER . '.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/user1.' . self::TEST_USER . '.shareKey')); | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/file1/' . Test_Encryption_Keymanager::TEST_USER . '.user1.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/file1/' . self::TEST_USER . '.user1.shareKey')); | |||
// owner key from existing file should still exists because the file is still there | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/keys/folder1/existingFile.txt/' . Test_Encryption_Keymanager::TEST_USER . '.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/keys/folder1/existingFile.txt/' . self::TEST_USER . '.shareKey')); | |||
// cleanup | |||
$this->view->deleteAll('/'.Test_Encryption_Keymanager::TEST_USER.'/files/folder1'); | |||
$this->view->deleteAll('/' . self::TEST_USER . '/files/folder1'); | |||
} | |||
@@ -302,44 +302,44 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function testRecursiveDelShareKeysFile() { | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files/folder1'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files/folder1/existingFile.txt', 'data'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files/folder1'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files/folder1/existingFile.txt', 'data'); | |||
// create folder structure for some dummy share key files | |||
$this->view->mkdir('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1'); | |||
$this->view->mkdir('/' . self::TEST_USER . '/files_encryption/share-keys/folder1'); | |||
// create some dummy share keys | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.txt.user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.txt.user2.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.txt.user3.shareKey', 'data'); | |||
$this->view->file_put_contents('/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.txt.' . Test_Encryption_Keymanager::TEST_USER . '.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.txt.user1.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.txt.user2.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.txt.user3.shareKey', 'data'); | |||
$this->view->file_put_contents('/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.txt.' . self::TEST_USER . '.shareKey', 'data'); | |||
// recursive delete share keys from user1 and user2 | |||
Encryption\Keymanager::delShareKey($this->view, | |||
array('user1', 'user2', Test_Encryption_Keymanager::TEST_USER), | |||
Encryption\Keymanager::getKeyPath($this->view, new Encryption\Util($this->view, Test_Encryption_Keymanager::TEST_USER), '/folder1/existingFile.txt'), | |||
Test_Encryption_Keymanager::TEST_USER, | |||
\OCA\Files_Encryption\Keymanager::delShareKey($this->view, | |||
array('user1', 'user2', self::TEST_USER), | |||
\OCA\Files_Encryption\Keymanager::getKeyPath($this->view, new \OCA\Files_Encryption\Util($this->view, self::TEST_USER), '/folder1/existingFile.txt'), | |||
self::TEST_USER, | |||
'/folder1/existingFile.txt'); | |||
// check if share keys from user1 and user2 are deleted | |||
$this->assertFalse($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.user1.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.user1.shareKey')); | |||
$this->assertFalse($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.user2.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.user2.shareKey')); | |||
// check if share keys for user3 and owner | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.txt.' . Test_Encryption_Keymanager::TEST_USER . '.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.txt.' . self::TEST_USER . '.shareKey')); | |||
$this->assertTrue($this->view->file_exists( | |||
'/'.Test_Encryption_Keymanager::TEST_USER.'/files_encryption/share-keys/folder1/existingFile.txt.user3.shareKey')); | |||
'/' . self::TEST_USER . '/files_encryption/share-keys/folder1/existingFile.txt.user3.shareKey')); | |||
// cleanup | |||
$this->view->deleteAll('/'.Test_Encryption_Keymanager::TEST_USER.'/files/folder1'); | |||
$this->view->deleteAll('/' . self::TEST_USER . '/files/folder1'); | |||
} | |||
function testKeySetPreperation() { | |||
$basePath = '/'.Test_Encryption_Keymanager::TEST_USER.'/files'; | |||
$basePath = '/' . self::TEST_USER . '/files'; | |||
$path = '/folder1/subfolder/subsubfolder/file.txt'; | |||
$this->assertFalse($this->view->is_dir($basePath . '/testKeySetPreperation')); | |||
@@ -356,9 +356,9 @@ class Test_Encryption_Keymanager extends \OCA\Files_Encryption\Tests\TestCase { | |||
} | |||
/** | |||
* dummy class to access protected methods of \OCA\Encryption\Keymanager for testing | |||
* dummy class to access protected methods of \OCA\Files_Encryption\Keymanager for testing | |||
*/ | |||
class TestProtectedKeymanagerMethods extends \OCA\Encryption\Keymanager { | |||
class TestProtectedKeymanagerMethods extends \OCA\Files_Encryption\Keymanager { | |||
/** | |||
* @param \OC\Files\View $view relative to data/ | |||
@@ -366,6 +366,6 @@ class TestProtectedKeymanagerMethods extends \OCA\Encryption\Keymanager { | |||
* @param string $basePath | |||
*/ | |||
public static function testKeySetPreperation($view, $path) { | |||
return self::keySetPreparation($view, $path); | |||
self::keySetPreparation($view, $path); | |||
} | |||
} |
@@ -21,15 +21,15 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
use OCA\Files_Encryption\Migration; | |||
namespace OCA\Files_Encryption\Tests; | |||
class Test_Migration extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Migration extends TestCase { | |||
const TEST_ENCRYPTION_MIGRATION_USER1='test_encryption_user1'; | |||
const TEST_ENCRYPTION_MIGRATION_USER2='test_encryption_user2'; | |||
const TEST_ENCRYPTION_MIGRATION_USER3='test_encryption_user3'; | |||
/** @var \OC\Files\View */ | |||
private $view; | |||
private $public_share_key_id; | |||
private $recovery_key_id; | |||
@@ -49,8 +49,8 @@ class Test_Migration extends \OCA\Files_Encryption\Tests\TestCase { | |||
} | |||
protected function tearDown() { | |||
if (OC_DB::tableExists('encryption_test')) { | |||
OC_DB::dropTable('encryption_test'); | |||
if (\OC_DB::tableExists('encryption_test')) { | |||
\OC_DB::dropTable('encryption_test'); | |||
} | |||
$this->assertTableNotExist('encryption_test'); | |||
@@ -60,10 +60,10 @@ class Test_Migration extends \OCA\Files_Encryption\Tests\TestCase { | |||
public function setUp() { | |||
$this->loginHelper(self::TEST_ENCRYPTION_MIGRATION_USER1); | |||
$this->view = new \OC\Files\View(); | |||
$this->public_share_key_id = Encryption\Helper::getPublicShareKeyId(); | |||
$this->recovery_key_id = Encryption\Helper::getRecoveryKeyId(); | |||
if (OC_DB::tableExists('encryption_test')) { | |||
OC_DB::dropTable('encryption_test'); | |||
$this->public_share_key_id = \OCA\Files_Encryption\Helper::getPublicShareKeyId(); | |||
$this->recovery_key_id = \OCA\Files_Encryption\Helper::getRecoveryKeyId(); | |||
if (\OC_DB::tableExists('encryption_test')) { | |||
\OC_DB::dropTable('encryption_test'); | |||
} | |||
$this->assertTableNotExist('encryption_test'); | |||
} | |||
@@ -101,7 +101,7 @@ class Test_Migration extends \OCA\Files_Encryption\Tests\TestCase { | |||
// create test table | |||
$this->checkLastIndexId(); | |||
OC_DB::createDbFromStructure(__DIR__ . '/encryption_table.xml'); | |||
\OC_DB::createDbFromStructure(__DIR__ . '/encryption_table.xml'); | |||
$this->checkLastIndexId(); | |||
} | |||
@@ -109,12 +109,12 @@ class Test_Migration extends \OCA\Files_Encryption\Tests\TestCase { | |||
* @param string $table | |||
*/ | |||
public function assertTableNotExist($table) { | |||
$type=OC_Config::getValue( "dbtype", "sqlite" ); | |||
$type = \OC_Config::getValue( "dbtype", "sqlite" ); | |||
if( $type == 'sqlite' || $type == 'sqlite3' ) { | |||
// sqlite removes the tables after closing the DB | |||
$this->assertTrue(true); | |||
} else { | |||
$this->assertFalse(OC_DB::tableExists($table), 'Table ' . $table . ' exists.'); | |||
$this->assertFalse(\OC_DB::tableExists($table), 'Table ' . $table . ' exists.'); | |||
} | |||
} | |||
@@ -20,13 +20,13 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Proxy | |||
* Class Proxy | |||
* this class provide basic proxy app tests | |||
*/ | |||
class Test_Encryption_Proxy extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Proxy extends TestCase { | |||
const TEST_ENCRYPTION_PROXY_USER1 = "test-proxy-user1"; | |||
@@ -45,20 +45,20 @@ class Test_Encryption_Proxy extends \OCA\Files_Encryption\Tests\TestCase { | |||
parent::setUpBeforeClass(); | |||
// create test user | |||
self::loginHelper(\Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_PROXY_USER1, true); | |||
} | |||
protected function setUp() { | |||
parent::setUp(); | |||
// set user id | |||
\OC_User::setUserId(\Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1); | |||
$this->userId = \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1; | |||
$this->pass = \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1; | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_PROXY_USER1); | |||
$this->userId = self::TEST_ENCRYPTION_PROXY_USER1; | |||
$this->pass = self::TEST_ENCRYPTION_PROXY_USER1; | |||
// init filesystem view | |||
$this->view = new \OC\Files\View('/'. \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 . '/files'); | |||
$this->rootView = new \OC\Files\View('/'. \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 ); | |||
$this->view = new \OC\Files\View('/'. self::TEST_ENCRYPTION_PROXY_USER1 . '/files'); | |||
$this->rootView = new \OC\Files\View('/'. self::TEST_ENCRYPTION_PROXY_USER1 ); | |||
// init short data | |||
$this->data = 'hats'; | |||
@@ -69,7 +69,7 @@ class Test_Encryption_Proxy extends \OCA\Files_Encryption\Tests\TestCase { | |||
public static function tearDownAfterClass() { | |||
// cleanup test user | |||
\OC_User::deleteUser(\Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_PROXY_USER1); | |||
parent::tearDownAfterClass(); | |||
} | |||
@@ -137,13 +137,13 @@ class Test_Encryption_Proxy extends \OCA\Files_Encryption\Tests\TestCase { | |||
public function isExcludedPathProvider() { | |||
return array( | |||
array ('/' . \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 . '/files/test.txt', false), | |||
array (\Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 . '/files/test.txt', false), | |||
array ('/' . self::TEST_ENCRYPTION_PROXY_USER1 . '/files/test.txt', false), | |||
array (self::TEST_ENCRYPTION_PROXY_USER1 . '/files/test.txt', false), | |||
array ('/files/test.txt', true), | |||
array ('/' . \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 . '/files/versions/test.txt', false), | |||
array ('/' . \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 . '/files_versions/test.txt', false), | |||
array ('/' . \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 . '/files_trashbin/test.txt', true), | |||
array ('/' . \Test_Encryption_Proxy::TEST_ENCRYPTION_PROXY_USER1 . '/file/test.txt', true), | |||
array ('/' . self::TEST_ENCRYPTION_PROXY_USER1 . '/files/versions/test.txt', false), | |||
array ('/' . self::TEST_ENCRYPTION_PROXY_USER1 . '/files_versions/test.txt', false), | |||
array ('/' . self::TEST_ENCRYPTION_PROXY_USER1 . '/files_trashbin/test.txt', true), | |||
array ('/' . self::TEST_ENCRYPTION_PROXY_USER1 . '/file/test.txt', true), | |||
); | |||
} | |||
@@ -153,7 +153,7 @@ class Test_Encryption_Proxy extends \OCA\Files_Encryption\Tests\TestCase { | |||
/** | |||
* Dummy class to make protected methods available for testing | |||
*/ | |||
class DummyProxy extends \OCA\Encryption\Proxy { | |||
class DummyProxy extends \OCA\Files_Encryption\Proxy { | |||
public function isExcludedPathTesting($path, $uid) { | |||
return $this->isExcludedPath($path, $uid); | |||
} |
@@ -20,13 +20,13 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Stream | |||
* Class Stream | |||
* this class provide basic stream tests | |||
*/ | |||
class Test_Encryption_Stream extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Stream extends TestCase { | |||
const TEST_ENCRYPTION_STREAM_USER1 = "test-stream-user1"; | |||
@@ -43,16 +43,16 @@ class Test_Encryption_Stream extends \OCA\Files_Encryption\Tests\TestCase { | |||
parent::setUpBeforeClass(); | |||
// create test user | |||
self::loginHelper(\Test_Encryption_Stream::TEST_ENCRYPTION_STREAM_USER1, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_STREAM_USER1, true); | |||
} | |||
protected function setUp() { | |||
parent::setUp(); | |||
// set user id | |||
\OC_User::setUserId(\Test_Encryption_Stream::TEST_ENCRYPTION_STREAM_USER1); | |||
$this->userId = \Test_Encryption_Stream::TEST_ENCRYPTION_STREAM_USER1; | |||
$this->pass = \Test_Encryption_Stream::TEST_ENCRYPTION_STREAM_USER1; | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_STREAM_USER1); | |||
$this->userId = self::TEST_ENCRYPTION_STREAM_USER1; | |||
$this->pass = self::TEST_ENCRYPTION_STREAM_USER1; | |||
// init filesystem view | |||
$this->view = new \OC\Files\View('/'); | |||
@@ -61,7 +61,7 @@ class Test_Encryption_Stream extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->dataShort = 'hats'; | |||
// remember files_trashbin state | |||
$this->stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
$this->stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we don't want to tests with app files_trashbin enabled | |||
\OC_App::disable('files_trashbin'); | |||
@@ -70,10 +70,10 @@ class Test_Encryption_Stream extends \OCA\Files_Encryption\Tests\TestCase { | |||
protected function tearDown() { | |||
// reset app files_trashbin | |||
if ($this->stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} | |||
else { | |||
OC_App::disable('files_trashbin'); | |||
\OC_App::disable('files_trashbin'); | |||
} | |||
parent::tearDown(); | |||
@@ -81,7 +81,7 @@ class Test_Encryption_Stream extends \OCA\Files_Encryption\Tests\TestCase { | |||
public static function tearDownAfterClass() { | |||
// cleanup test user | |||
\OC_User::deleteUser(\Test_Encryption_Stream::TEST_ENCRYPTION_STREAM_USER1); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_STREAM_USER1); | |||
parent::tearDownAfterClass(); | |||
} | |||
@@ -208,7 +208,7 @@ class Test_Encryption_Stream extends \OCA\Files_Encryption\Tests\TestCase { | |||
file_put_contents($tmpFilename, $encryptedContent); | |||
\OCA\Encryption\Helper::addTmpFileToMapper($tmpFilename, $filename); | |||
\OCA\Files_Encryption\Helper::addTmpFileToMapper($tmpFilename, $filename); | |||
// try to read the file from /tmp | |||
$handle = fopen("crypt://".$tmpFilename, "r"); |
@@ -8,10 +8,8 @@ | |||
namespace OCA\Files_Encryption\Tests; | |||
use OCA\Encryption; | |||
/** | |||
* Class Test_Encryption_TestCase | |||
* Class TestCase | |||
*/ | |||
abstract class TestCase extends \Test\TestCase { | |||
@@ -42,7 +40,7 @@ abstract class TestCase extends \Test\TestCase { | |||
if ($loadEncryption) { | |||
$params['uid'] = $user; | |||
$params['password'] = $password; | |||
\OCA\Encryption\Hooks::login($params); | |||
\OCA\Files_Encryption\Hooks::login($params); | |||
} | |||
} | |||
@@ -59,16 +57,16 @@ abstract class TestCase extends \Test\TestCase { | |||
\OC_User::clearBackends(); | |||
\OC_User::useBackend('database'); | |||
\OCA\Encryption\Helper::registerFilesystemHooks(); | |||
\OCA\Encryption\Helper::registerUserHooks(); | |||
\OCA\Encryption\Helper::registerShareHooks(); | |||
\OCA\Files_Encryption\Helper::registerFilesystemHooks(); | |||
\OCA\Files_Encryption\Helper::registerUserHooks(); | |||
\OCA\Files_Encryption\Helper::registerShareHooks(); | |||
\OC::registerShareHooks(); | |||
\OCP\Util::connectHook('OC_Filesystem', 'setup', '\OC\Files\Storage\Shared', 'setup'); | |||
// clear and register hooks | |||
\OC_FileProxy::clearProxies(); | |||
\OC_FileProxy::register(new \OCA\Encryption\Proxy()); | |||
\OC_FileProxy::register(new \OCA\Files_Encryption\Proxy()); | |||
} | |||
public static function tearDownAfterClass() { |
@@ -20,13 +20,13 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Trashbin | |||
* Class Trashbin | |||
* this class provide basic trashbin app tests | |||
*/ | |||
class Test_Encryption_Trashbin extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Trashbin extends TestCase { | |||
const TEST_ENCRYPTION_TRASHBIN_USER1 = "test-trashbin-user1"; | |||
@@ -71,7 +71,7 @@ class Test_Encryption_Trashbin extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->subsubfolder = '/subsubfolder1'; | |||
// remember files_trashbin state | |||
$this->stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
$this->stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we want to tests with app files_trashbin enabled | |||
\OC_App::enable('files_trashbin'); | |||
@@ -80,10 +80,10 @@ class Test_Encryption_Trashbin extends \OCA\Files_Encryption\Tests\TestCase { | |||
protected function tearDown() { | |||
// reset app files_trashbin | |||
if ($this->stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} | |||
else { | |||
OC_App::disable('files_trashbin'); | |||
\OC_App::disable('files_trashbin'); | |||
} | |||
parent::tearDown(); | |||
@@ -173,7 +173,7 @@ class Test_Encryption_Trashbin extends \OCA\Files_Encryption\Tests\TestCase { | |||
// check if we found the file we created | |||
$this->assertNotNull($trashFileSuffix); | |||
$this->assertTrue($this->view->is_dir('/' . \Test_Encryption_Trashbin::TEST_ENCRYPTION_TRASHBIN_USER1 . '/files_trashbin/keys/' . $filename . '.' . $trashFileSuffix)); | |||
$this->assertTrue($this->view->is_dir('/' . self::TEST_ENCRYPTION_TRASHBIN_USER1 . '/files_trashbin/keys/' . $filename . '.' . $trashFileSuffix)); | |||
// check if key for admin not exists | |||
$this->assertTrue($this->view->file_exists( | |||
@@ -219,10 +219,10 @@ class Test_Encryption_Trashbin extends \OCA\Files_Encryption\Tests\TestCase { | |||
// before calling the restore operation the keys shouldn't be there | |||
$this->assertFalse($this->view->file_exists( | |||
'/' . \Test_Encryption_Trashbin::TEST_ENCRYPTION_TRASHBIN_USER1 . '/files_encryption/keys/' . $filename . '/fileKey')); | |||
'/' . self::TEST_ENCRYPTION_TRASHBIN_USER1 . '/files_encryption/keys/' . $filename . '/fileKey')); | |||
$this->assertFalse($this->view->file_exists( | |||
'/' . \Test_Encryption_Trashbin::TEST_ENCRYPTION_TRASHBIN_USER1 . '/files_encryption/keys/' | |||
. $filename . '/' . \Test_Encryption_Trashbin::TEST_ENCRYPTION_TRASHBIN_USER1 . '.shareKey')); | |||
'/' . self::TEST_ENCRYPTION_TRASHBIN_USER1 . '/files_encryption/keys/' | |||
. $filename . '/' . self::TEST_ENCRYPTION_TRASHBIN_USER1 . '.shareKey')); | |||
// restore first file | |||
$this->assertTrue(\OCA\Files_Trashbin\Trashbin::restore($filename . '.' . $trashFileSuffix, $filename, $timestamp)); |
@@ -6,12 +6,12 @@ | |||
* See the COPYING-README file. | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Util | |||
* Class Util | |||
*/ | |||
class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Util extends TestCase { | |||
const TEST_ENCRYPTION_UTIL_USER1 = "test-util-user1"; | |||
const TEST_ENCRYPTION_UTIL_USER2 = "test-util-user2"; | |||
@@ -24,14 +24,14 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
public $publicKeyDir; | |||
public $pass; | |||
/** | |||
* @var OC\Files\View | |||
* @var \OC\Files\View | |||
*/ | |||
public $view; | |||
public $keyfilesPath; | |||
public $publicKeyPath; | |||
public $privateKeyPath; | |||
/** | |||
* @var \OCA\Encryption\Util | |||
* @var \OCA\Files_Encryption\Util | |||
*/ | |||
public $util; | |||
public $dataShort; | |||
@@ -74,12 +74,12 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->legacyEncryptedDataKey = __DIR__ . '/encryption.key'; | |||
$this->legacyKey = "30943623843030686906\0\0\0\0"; | |||
$keypair = Encryption\Crypt::createKeypair(); | |||
$keypair = \OCA\Files_Encryption\Crypt::createKeypair(); | |||
$this->genPublicKey = $keypair['publicKey']; | |||
$this->genPrivateKey = $keypair['privateKey']; | |||
$this->publicKeyDir = \OCA\Encryption\Keymanager::getPublicKeyPath(); | |||
$this->publicKeyDir = \OCA\Files_Encryption\Keymanager::getPublicKeyPath(); | |||
$this->encryptionDir = '/' . $this->userId . '/' . 'files_encryption'; | |||
$this->keysPath = $this->encryptionDir . '/' . 'keys'; | |||
$this->publicKeyPath = | |||
@@ -89,10 +89,10 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->view = new \OC\Files\View('/'); | |||
$this->util = new Encryption\Util($this->view, $this->userId); | |||
$this->util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
// remember files_trashbin state | |||
$this->stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
$this->stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we don't want to tests with app files_trashbin enabled | |||
\OC_App::disable('files_trashbin'); | |||
@@ -101,10 +101,10 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
protected function tearDown() { | |||
// reset app files_trashbin | |||
if ($this->stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} | |||
else { | |||
OC_App::disable('files_trashbin'); | |||
\OC_App::disable('files_trashbin'); | |||
} | |||
parent::tearDown(); | |||
@@ -128,7 +128,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
* test that paths set during User construction are correct | |||
*/ | |||
function testKeyPaths() { | |||
$util = new Encryption\Util($this->view, $this->userId); | |||
$util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
$this->assertEquals($this->publicKeyDir, $util->getPath('publicKeyDir')); | |||
$this->assertEquals($this->encryptionDir, $util->getPath('encryptionDir')); | |||
@@ -144,7 +144,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function testIsEncryptedPath() { | |||
$util = new Encryption\Util($this->view, $this->userId); | |||
$util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
self::loginHelper($this->userId); | |||
@@ -197,7 +197,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
// | |||
// $params['uid'] = $this->userId; | |||
// $params['password'] = $this->pass; | |||
// $this->assertFalse(OCA\Encryption\Hooks::login($params)); | |||
// $this->assertFalse(OCA\Files_Encryption\Hooks::login($params)); | |||
// | |||
// $this->view->unlink($this->privateKeyPath); | |||
// } | |||
@@ -207,7 +207,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function testRecoveryEnabledForUser() { | |||
$util = new Encryption\Util($this->view, $this->userId); | |||
$util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
// Record the value so we can return it to it's original state later | |||
$enabled = $util->recoveryEnabledForUser(); | |||
@@ -241,7 +241,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
// Re-enable proxy - our work is done | |||
\OC_FileProxy::$enabled = $proxyStatus; | |||
$util = new Encryption\Util($this->view, $this->userId); | |||
$util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
list($fileOwnerUid, $file) = $util->getUidAndFilename($filename); | |||
@@ -283,7 +283,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
function testEncryptAll() { | |||
$filename = "/encryptAll" . $this->getUniqueID() . ".txt"; | |||
$util = new Encryption\Util($this->view, $this->userId); | |||
$util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
// disable encryption to upload a unencrypted file | |||
\OC_App::disable('files_encryption'); | |||
@@ -338,18 +338,18 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->assertSame($encContent, $content); | |||
// now we load the encryption app again | |||
OC_App::loadApp('files_encryption'); | |||
\OC_App::loadApp('files_encryption'); | |||
// init encryption app | |||
$params = array('uid' => \OCP\User::getUser(), | |||
'password' => \OCP\User::getUser()); | |||
$view = new OC\Files\View('/'); | |||
$util = new \OCA\Encryption\Util($view, \OCP\User::getUser()); | |||
$view = new \OC\Files\View('/'); | |||
$util = new \OCA\Files_Encryption\Util($view, \OCP\User::getUser()); | |||
$result = $util->initEncryption($params); | |||
$this->assertTrue($result instanceof \OCA\Encryption\Session); | |||
$this->assertTrue($result instanceof \OCA\Files_Encryption\Session); | |||
$successful = $util->decryptAll(); | |||
@@ -385,7 +385,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
// cleanup | |||
$this->view->unlink($this->userId . '/files/' . $filename); | |||
$this->view->deleteAll($backupPath); | |||
OC_App::enable('files_encryption'); | |||
\OC_App::enable('files_encryption'); | |||
} | |||
@@ -401,7 +401,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->view->file_put_contents($encPath . '/keys/foo/fileKey', 'key'); | |||
$this->view->file_put_contents($encPath . '/keys/foo/user1.shareKey', 'share key'); | |||
$util = new \OCA\Encryption\Util($this->view, self::TEST_ENCRYPTION_UTIL_USER1); | |||
$util = new \OCA\Files_Encryption\Util($this->view, self::TEST_ENCRYPTION_UTIL_USER1); | |||
$util->backupAllKeys('testBackupAllKeys'); | |||
@@ -427,7 +427,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
$file1 = "/decryptAll1" . $this->getUniqueID() . ".txt"; | |||
$file2 = "/decryptAll2" . $this->getUniqueID() . ".txt"; | |||
$util = new Encryption\Util($this->view, $this->userId); | |||
$util = new \OCA\Files_Encryption\Util($this->view, $this->userId); | |||
$this->view->file_put_contents($this->userId . '/files/' . $file1, $this->dataShort); | |||
$this->view->file_put_contents($this->userId . '/files/' . $file2, $this->dataShort); | |||
@@ -551,13 +551,13 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
$publicShareKeyId, | |||
$recoveryKeyId, | |||
); | |||
\Test_Encryption_Util::loginHelper('readyUser', true); | |||
\Test_Encryption_Util::loginHelper('notReadyUser', true); | |||
self::loginHelper('readyUser', true); | |||
self::loginHelper('notReadyUser', true); | |||
// delete encryption dir to make it not ready | |||
$this->view->unlink('notReadyUser/files_encryption/'); | |||
// login as user1 | |||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Util::TEST_ENCRYPTION_UTIL_USER1); | |||
self::loginHelper(self::TEST_ENCRYPTION_UTIL_USER1); | |||
$result = $this->util->filterShareReadyUsers($usersToTest); | |||
$this->assertEquals( | |||
@@ -598,7 +598,7 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
if ($loadEncryption) { | |||
$params['uid'] = $user; | |||
$params['password'] = $password; | |||
OCA\Encryption\Hooks::login($params); | |||
\OCA\Files_Encryption\Hooks::login($params); | |||
} | |||
} | |||
@@ -625,9 +625,9 @@ class Test_Encryption_Util extends \OCA\Files_Encryption\Tests\TestCase { | |||
} | |||
/** | |||
* dummy class extends \OCA\Encryption\Util to access protected methods for testing | |||
* dummy class extends \OCA\Files_Encryption\Util to access protected methods for testing | |||
*/ | |||
class DummyUtilClass extends \OCA\Encryption\Util { | |||
class DummyUtilClass extends \OCA\Files_Encryption\Util { | |||
public function testIsMountPointApplicableToUser($mount) { | |||
return $this->isMountPointApplicableToUser($mount); | |||
} |
@@ -20,14 +20,14 @@ | |||
* | |||
*/ | |||
use OCA\Encryption; | |||
namespace OCA\Files_Encryption\Tests; | |||
/** | |||
* Class Test_Encryption_Webdav | |||
* Class Webdav | |||
* | |||
* this class provide basic webdav tests for PUT,GET and DELETE | |||
*/ | |||
class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
class Webdav extends TestCase { | |||
const TEST_ENCRYPTION_WEBDAV_USER1 = "test-webdav-user1"; | |||
@@ -46,7 +46,7 @@ class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
parent::setUpBeforeClass(); | |||
// create test user | |||
self::loginHelper(\Test_Encryption_Webdav::TEST_ENCRYPTION_WEBDAV_USER1, true); | |||
self::loginHelper(self::TEST_ENCRYPTION_WEBDAV_USER1, true); | |||
} | |||
@@ -57,9 +57,9 @@ class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
\OC_User::useBackend('database'); | |||
// set user id | |||
\OC_User::setUserId(\Test_Encryption_Webdav::TEST_ENCRYPTION_WEBDAV_USER1); | |||
$this->userId = \Test_Encryption_Webdav::TEST_ENCRYPTION_WEBDAV_USER1; | |||
$this->pass = \Test_Encryption_Webdav::TEST_ENCRYPTION_WEBDAV_USER1; | |||
\OC_User::setUserId(self::TEST_ENCRYPTION_WEBDAV_USER1); | |||
$this->userId = self::TEST_ENCRYPTION_WEBDAV_USER1; | |||
$this->pass = self::TEST_ENCRYPTION_WEBDAV_USER1; | |||
// init filesystem view | |||
$this->view = new \OC\Files\View('/'); | |||
@@ -68,21 +68,21 @@ class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
$this->dataShort = 'hats'; | |||
// remember files_trashbin state | |||
$this->stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); | |||
$this->stateFilesTrashbin = \OC_App::isEnabled('files_trashbin'); | |||
// we don't want to tests with app files_trashbin enabled | |||
\OC_App::disable('files_trashbin'); | |||
// create test user | |||
self::loginHelper(\Test_Encryption_Webdav::TEST_ENCRYPTION_WEBDAV_USER1); | |||
self::loginHelper(self::TEST_ENCRYPTION_WEBDAV_USER1); | |||
} | |||
protected function tearDown() { | |||
// reset app files_trashbin | |||
if ($this->stateFilesTrashbin) { | |||
OC_App::enable('files_trashbin'); | |||
\OC_App::enable('files_trashbin'); | |||
} else { | |||
OC_App::disable('files_trashbin'); | |||
\OC_App::disable('files_trashbin'); | |||
} | |||
parent::tearDown(); | |||
@@ -90,7 +90,7 @@ class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
public static function tearDownAfterClass() { | |||
// cleanup test user | |||
\OC_User::deleteUser(\Test_Encryption_Webdav::TEST_ENCRYPTION_WEBDAV_USER1); | |||
\OC_User::deleteUser(self::TEST_ENCRYPTION_WEBDAV_USER1); | |||
parent::tearDownAfterClass(); | |||
} | |||
@@ -138,7 +138,7 @@ class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
\OC_FileProxy::$enabled = $proxyStatus; | |||
// check if encrypted content is valid | |||
$this->assertTrue(Encryption\Crypt::isCatfileContent($encryptedContent)); | |||
$this->assertTrue(\OCA\Files_Encryption\Crypt::isCatfileContent($encryptedContent)); | |||
// get decrypted file contents | |||
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files' . $filename); | |||
@@ -211,14 +211,14 @@ class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
*/ | |||
function handleWebdavRequest($body = false) { | |||
// Backends | |||
$authBackend = new OC_Connector_Sabre_Auth(); | |||
$lockBackend = new OC_Connector_Sabre_Locks(); | |||
$requestBackend = new OC_Connector_Sabre_Request(); | |||
$authBackend = new \OC_Connector_Sabre_Auth(); | |||
$lockBackend = new \OC_Connector_Sabre_Locks(); | |||
$requestBackend = new \OC_Connector_Sabre_Request(); | |||
// Create ownCloud Dir | |||
$root = '/' . $this->userId . '/files'; | |||
$view = new \OC\Files\View($root); | |||
$publicDir = new OC_Connector_Sabre_Directory($view, $view->getFileInfo('')); | |||
$publicDir = new \OC_Connector_Sabre_Directory($view, $view->getFileInfo('')); | |||
$objectTree = new \OC\Connector\Sabre\ObjectTree(); | |||
$mountManager = \OC\Files\Filesystem::getMountManager(); | |||
$objectTree->init($publicDir, $view, $mountManager); | |||
@@ -232,8 +232,8 @@ class Test_Encryption_Webdav extends \OCA\Files_Encryption\Tests\TestCase { | |||
$server->addPlugin(new \Sabre\DAV\Auth\Plugin($authBackend, 'ownCloud')); | |||
$server->addPlugin(new \Sabre\DAV\Locks\Plugin($lockBackend)); | |||
$server->addPlugin(new \Sabre\DAV\Browser\Plugin(false)); // Show something in the Browser, but no upload | |||
$server->addPlugin(new OC_Connector_Sabre_QuotaPlugin($view)); | |||
$server->addPlugin(new OC_Connector_Sabre_MaintenancePlugin()); | |||
$server->addPlugin(new \OC_Connector_Sabre_QuotaPlugin($view)); | |||
$server->addPlugin(new \OC_Connector_Sabre_MaintenancePlugin()); | |||
$server->debugExceptions = true; | |||
// And off we go! |
@@ -274,7 +274,7 @@ class Trashbin { | |||
return 0; | |||
} | |||
$util = new \OCA\Encryption\Util($rootView, $user); | |||
$util = new \OCA\Files_Encryption\Util($rootView, $user); | |||
$baseDir = '/files_encryption/'; | |||
if (!$util->isSystemWideMountPoint($ownerPath)) { | |||
@@ -448,7 +448,7 @@ class Trashbin { | |||
return false; | |||
} | |||
$util = new \OCA\Encryption\Util($rootView, $user); | |||
$util = new \OCA\Files_Encryption\Util($rootView, $user); | |||
$baseDir = '/files_encryption/'; | |||
if (!$util->isSystemWideMountPoint($ownerPath)) { |
@@ -104,7 +104,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements \Sabre\ | |||
} catch (\OCP\Files\LockNotAcquiredException $e) { | |||
// the file is currently being written to by another process | |||
throw new OC_Connector_Sabre_Exception_FileLocked($e->getMessage(), $e->getCode(), $e); | |||
} catch (\OCA\Encryption\Exception\EncryptionException $e) { | |||
} catch (\OCA\Files_Encryption\Exception\EncryptionException $e) { | |||
throw new \Sabre\DAV\Exception\Forbidden($e->getMessage()); | |||
} catch (\OCP\Files\StorageNotAvailableException $e) { | |||
throw new \Sabre\DAV\Exception\ServiceUnavailable($e->getMessage()); | |||
@@ -166,7 +166,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements \Sabre\ | |||
} else { | |||
try { | |||
return $this->fileView->fopen(ltrim($this->path, '/'), 'rb'); | |||
} catch (\OCA\Encryption\Exception\EncryptionException $e) { | |||
} catch (\OCA\Files_Encryption\Exception\EncryptionException $e) { | |||
throw new \Sabre\DAV\Exception\Forbidden($e->getMessage()); | |||
} catch (\OCP\Files\StorageNotAvailableException $e) { | |||
throw new \Sabre\DAV\Exception\ServiceUnavailable($e->getMessage()); |
@@ -11,7 +11,7 @@ $params = array('uid' => \OCP\User::getUser(), | |||
'password' => $_POST['password']); | |||
$view = new OC\Files\View('/'); | |||
$util = new \OCA\Encryption\Util($view, \OCP\User::getUser()); | |||
$util = new \OCA\Files_Encryption\Util($view, \OCP\User::getUser()); | |||
$l = \OC::$server->getL10N('settings'); | |||
$result = $util->initEncryption($params); |
@@ -52,7 +52,7 @@ class Controller { | |||
if (\OC_App::isEnabled('files_encryption')) { | |||
//handle the recovery case | |||
$util = new \OCA\Encryption\Util(new \OC\Files\View('/'), $username); | |||
$util = new \OCA\Files_Encryption\Util(new \OC\Files\View('/'), $username); | |||
$recoveryAdminEnabled = \OC_Appconfig::getValue('files_encryption', 'recoveryAdminEnabled'); | |||
$validRecoveryPassword = false; |