Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/passman.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrantje <brantje@gmail.com>2017-01-03 00:06:55 +0300
committerbrantje <brantje@gmail.com>2017-01-11 20:09:49 +0300
commit3f4afba34f880fb1e2c5403d3265f2c270c00cd0 (patch)
treebfc64375c08e2847b5fbb8468f6720873a8defbe /migration
parentb05137b93ff7b19a0bbf621648992af1f2ae96f0 (diff)
Fixes
Diffstat (limited to 'migration')
-rw-r--r--migration/serversideencryption.php28
1 files changed, 22 insertions, 6 deletions
diff --git a/migration/serversideencryption.php b/migration/serversideencryption.php
index 72bb2bff..7ecc4371 100644
--- a/migration/serversideencryption.php
+++ b/migration/serversideencryption.php
@@ -24,6 +24,7 @@
namespace OCA\Passman\Migration;
use OCA\Passman\Db\CredentialRevision;
+use OCA\Passman\Db\File;
use OCA\Passman\Service\CredentialRevisionService;
use OCA\Passman\Service\CredentialService;
use OCA\Passman\Service\EncryptService;
@@ -36,7 +37,7 @@ use OCP\Migration\IRepairStep;
class ServerSideEncryption implements IRepairStep {
- /** @var encryptService */
+ /** @var EncryptService */
private $encryptService;
/** @var IDBConnection */
@@ -73,6 +74,8 @@ class ServerSideEncryption implements IRepairStep {
}
public function run(IOutput $output) {
+ $output->info('Enabling Service Side Encryption for passman');
+
if (version_compare($this->installedVersion, '2.0.0RC4', '<')) {
$this->encryptCredentials();
$this->encryptRevisions();
@@ -80,15 +83,19 @@ class ServerSideEncryption implements IRepairStep {
}
}
+ private function fetchAll($sql){
+ return $this->db->executeQuery($sql)->fetchAll();
+ }
+
private function encryptCredentials() {
- $credentials = $this->db->executeQuery('SELECT * FROM `*PREFIX*passman_credentials`')->fetchAll();
+ $credentials = $this->fetchAll('SELECT * FROM `*PREFIX*passman_credentials`');
foreach ($credentials as $credential) {
$this->credentialService->updateCredential($credential);
}
}
private function encryptRevisions() {
- $revisions = $this->db->executeQuery('SELECT * FROM `*PREFIX*passman_revisions`')->fetchAll();
+ $revisions = $this->fetchAll('SELECT * FROM `*PREFIX*passman_revisions`');
foreach ($revisions as $_revision) {
$revision = new CredentialRevision();
$revision->setId($_revision['id']);
@@ -97,14 +104,23 @@ class ServerSideEncryption implements IRepairStep {
$revision->setUserId($_revision['user_id']);
$revision->setCreated($_revision['created']);
$revision->setEditedBy($_revision['edited_by']);
- $revision->setCredentialData( $_revision['credential_data']);
+ $revision->setCredentialData($_revision['credential_data']);
$this->revisionService->updateRevision($revision);
}
}
private function encryptFiles() {
- $files = $this->db->executeQuery('SELECT * FROM `*PREFIX*passman_files`')->fetchAll();
- foreach ($files as $file) {
+ $files = $this->fetchAll('SELECT * FROM `*PREFIX*passman_files`');
+ foreach ($files as $_file) {
+ $file = new File();
+ $file->setId($_file['id']);
+ $file->setGuid($_file['guid']);
+ $file->setUserId($_file['user_id']);
+ $file->setMimetype($_file['minetype']);
+ $file->setFilename($_file['filename']);
+ $file->setSize($_file['size']);
+ $file->setCreated($_file['created']);
+ $file->setFileData($_file['file_data']);
$this->fileService->updateFile($file);
}
}