aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_encryption
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@owncloud.com>2012-11-04 19:58:48 +0100
committerArthur Schiwon <blizzz@owncloud.com>2012-11-04 19:58:48 +0100
commit00bb246a0d90ddbcc1016fdedb5cf629bfbca70a (patch)
treef5d69cf10ef3fd157a21990a38515c03b74035a1 /apps/files_encryption
parentdf8c67721df1358eab7aa5794ef223a5bc8f0b59 (diff)
parent8ac3849a95bd6a733cce9134bab4bf38c5c0fadd (diff)
downloadnextcloud-server-00bb246a0d90ddbcc1016fdedb5cf629bfbca70a.tar.gz
nextcloud-server-00bb246a0d90ddbcc1016fdedb5cf629bfbca70a.zip
merge from master
Diffstat (limited to 'apps/files_encryption')
-rw-r--r--apps/files_encryption/appinfo/app.php4
-rw-r--r--apps/files_encryption/lib/crypt.php10
-rw-r--r--apps/files_encryption/lib/cryptstream.php8
-rw-r--r--apps/files_encryption/lib/proxy.php34
-rw-r--r--apps/files_encryption/settings.php10
-rw-r--r--apps/files_encryption/tests/encryption.php60
-rw-r--r--apps/files_encryption/tests/proxy.php32
-rw-r--r--apps/files_encryption/tests/stream.php44
8 files changed, 101 insertions, 101 deletions
diff --git a/apps/files_encryption/appinfo/app.php b/apps/files_encryption/appinfo/app.php
index bb130a366be..3f76e910a52 100644
--- a/apps/files_encryption/appinfo/app.php
+++ b/apps/files_encryption/appinfo/app.php
@@ -6,9 +6,9 @@ OC::$CLASSPATH['OC_FileProxy_Encryption'] = 'apps/files_encryption/lib/proxy.php
OC_FileProxy::register(new OC_FileProxy_Encryption());
-OCP\Util::connectHook('OC_User','post_login','OC_Crypt','loginListener');
+OCP\Util::connectHook('OC_User', 'post_login', 'OC_Crypt', 'loginListener');
-stream_wrapper_register('crypt','OC_CryptStream');
+stream_wrapper_register('crypt', 'OC_CryptStream');
if(!isset($_SESSION['enckey']) and OCP\User::isLoggedIn()) {//force the user to re-loggin if the encryption key isn't unlocked (happens when a user is logged in before the encryption app is enabled)
OCP\User::logout();
diff --git a/apps/files_encryption/lib/crypt.php b/apps/files_encryption/lib/crypt.php
index 28bf3c5c93e..5ff3f578384 100644
--- a/apps/files_encryption/lib/crypt.php
+++ b/apps/files_encryption/lib/crypt.php
@@ -43,7 +43,7 @@ class OC_Crypt {
self::init($params['uid'], $params['password']);
}
- public static function init($login,$password) {
+ public static function init($login, $password) {
$view=new OC_FilesystemView('/');
if(!$view->file_exists('/'.$login)) {
$view->mkdir('/'.$login);
@@ -80,7 +80,7 @@ class OC_Crypt {
}
}
- public static function createkey($username,$passcode) {
+ public static function createkey($username, $passcode) {
// generate a random key
$key=mt_rand(10000, 99999).mt_rand(10000, 99999).mt_rand(10000, 99999).mt_rand(10000, 99999);
@@ -195,7 +195,7 @@ class OC_Crypt {
public static function blockEncrypt($data, $key='') {
$result='';
while(strlen($data)) {
- $result.=self::encrypt(substr($data, 0, 8192),$key);
+ $result.=self::encrypt(substr($data, 0, 8192), $key);
$data=substr($data, 8192);
}
return $result;
@@ -204,10 +204,10 @@ class OC_Crypt {
/**
* decrypt data in 8192b sized blocks
*/
- public static function blockDecrypt($data, $key='',$maxLength=0) {
+ public static function blockDecrypt($data, $key='', $maxLength=0) {
$result='';
while(strlen($data)) {
- $result.=self::decrypt(substr($data, 0, 8192),$key);
+ $result.=self::decrypt(substr($data, 0, 8192), $key);
$data=substr($data, 8192);
}
if($maxLength>0) {
diff --git a/apps/files_encryption/lib/cryptstream.php b/apps/files_encryption/lib/cryptstream.php
index 0dd2d4b7b1e..8b05560050d 100644
--- a/apps/files_encryption/lib/cryptstream.php
+++ b/apps/files_encryption/lib/cryptstream.php
@@ -23,7 +23,7 @@
/**
* transparently encrypted filestream
*
- * you can use it as wrapper around an existing stream by setting OC_CryptStream::$sourceStreams['foo']=array('path'=>$path,'stream'=>$stream)
+ * you can use it as wrapper around an existing stream by setting OC_CryptStream::$sourceStreams['foo']=array('path'=>$path, 'stream'=>$stream)
* and then fopen('crypt://streams/foo');
*/
@@ -106,7 +106,7 @@ class OC_CryptStream{
if($currentPos%8192!=0) {
//make sure we always start on a block start
fseek($this->source, -($currentPos%8192), SEEK_CUR);
- $encryptedBlock=fread($this->source,8192);
+ $encryptedBlock=fread($this->source, 8192);
fseek($this->source, -($currentPos%8192), SEEK_CUR);
$block=OC_Crypt::decrypt($encryptedBlock);
$data=substr($block, 0, $currentPos%8192).$data;
@@ -123,11 +123,11 @@ class OC_CryptStream{
$data=substr($data, 8192);
}
}
- $this->size=max($this->size,$currentPos+$length);
+ $this->size=max($this->size, $currentPos+$length);
return $length;
}
- public function stream_set_option($option,$arg1,$arg2) {
+ public function stream_set_option($option, $arg1, $arg2) {
switch($option) {
case STREAM_OPTION_BLOCKING:
stream_set_blocking($this->source, $arg1);
diff --git a/apps/files_encryption/lib/proxy.php b/apps/files_encryption/lib/proxy.php
index 61b87ab5463..cacf7d7920a 100644
--- a/apps/files_encryption/lib/proxy.php
+++ b/apps/files_encryption/lib/proxy.php
@@ -36,7 +36,7 @@ class OC_FileProxy_Encryption extends OC_FileProxy{
*/
private static function shouldEncrypt($path) {
if(is_null(self::$enableEncryption)) {
- self::$enableEncryption=(OCP\Config::getAppValue('files_encryption','enable_encryption','true')=='true');
+ self::$enableEncryption=(OCP\Config::getAppValue('files_encryption', 'enable_encryption', 'true')=='true');
}
if(!self::$enableEncryption) {
return false;
@@ -59,7 +59,7 @@ class OC_FileProxy_Encryption extends OC_FileProxy{
* @return bool
*/
private static function isEncrypted($path) {
- $metadata=OC_FileCache_Cached::get($path,'');
+ $metadata=OC_FileCache_Cached::get($path, '');
return isset($metadata['encrypted']) and (bool)$metadata['encrypted'];
}
@@ -68,15 +68,15 @@ class OC_FileProxy_Encryption extends OC_FileProxy{
if (!is_resource($data)) {//stream put contents should have been converter to fopen
$size=strlen($data);
$data=OC_Crypt::blockEncrypt($data);
- OC_FileCache::put($path, array('encrypted'=>true,'size'=>$size),'');
+ OC_FileCache::put($path, array('encrypted'=>true,'size'=>$size), '');
}
}
}
- public function postFile_get_contents($path,$data) {
+ public function postFile_get_contents($path, $data) {
if(self::isEncrypted($path)) {
- $cached=OC_FileCache_Cached::get($path,'');
- $data=OC_Crypt::blockDecrypt($data,'',$cached['size']);
+ $cached=OC_FileCache_Cached::get($path, '');
+ $data=OC_Crypt::blockDecrypt($data, '', $cached['size']);
}
return $data;
}
@@ -88,40 +88,40 @@ class OC_FileProxy_Encryption extends OC_FileProxy{
$meta=stream_get_meta_data($result);
if(self::isEncrypted($path)) {
fclose($result);
- $result=fopen('crypt://'.$path,$meta['mode']);
+ $result=fopen('crypt://'.$path, $meta['mode']);
}elseif(self::shouldEncrypt($path) and $meta['mode']!='r' and $meta['mode']!='rb') {
if(OC_Filesystem::file_exists($path) and OC_Filesystem::filesize($path)>0) {
//first encrypt the target file so we don't end up with a half encrypted file
- OCP\Util::writeLog('files_encryption','Decrypting '.$path.' before writing',OCP\Util::DEBUG);
+ OCP\Util::writeLog('files_encryption','Decrypting '.$path.' before writing', OCP\Util::DEBUG);
$tmp=fopen('php://temp');
- OCP\Files::streamCopy($result,$tmp);
+ OCP\Files::streamCopy($result, $tmp);
fclose($result);
- OC_Filesystem::file_put_contents($path,$tmp);
+ OC_Filesystem::file_put_contents($path, $tmp);
fclose($tmp);
}
- $result=fopen('crypt://'.$path,$meta['mode']);
+ $result=fopen('crypt://'.$path, $meta['mode']);
}
return $result;
}
- public function postGetMimeType($path,$mime) {
+ public function postGetMimeType($path, $mime) {
if(self::isEncrypted($path)) {
- $mime=OCP\Files::getMimeType('crypt://'.$path,'w');
+ $mime=OCP\Files::getMimeType('crypt://'.$path, 'w');
}
return $mime;
}
- public function postStat($path,$data) {
+ public function postStat($path, $data) {
if(self::isEncrypted($path)) {
- $cached=OC_FileCache_Cached::get($path,'');
+ $cached=OC_FileCache_Cached::get($path, '');
$data['size']=$cached['size'];
}
return $data;
}
- public function postFileSize($path,$size) {
+ public function postFileSize($path, $size) {
if(self::isEncrypted($path)) {
- $cached=OC_FileCache_Cached::get($path,'');
+ $cached=OC_FileCache_Cached::get($path, '');
return $cached['size'];
}else{
return $size;
diff --git a/apps/files_encryption/settings.php b/apps/files_encryption/settings.php
index 168124a8d22..ae28b088cd6 100644
--- a/apps/files_encryption/settings.php
+++ b/apps/files_encryption/settings.php
@@ -8,11 +8,11 @@
$tmpl = new OCP\Template( 'files_encryption', 'settings');
$blackList=explode(',', OCP\Config::getAppValue('files_encryption', 'type_blacklist', 'jpg,png,jpeg,avi,mpg,mpeg,mkv,mp3,oga,ogv,ogg'));
-$enabled=(OCP\Config::getAppValue('files_encryption','enable_encryption','true')=='true');
-$tmpl->assign('blacklist',$blackList);
-$tmpl->assign('encryption_enabled',$enabled);
+$enabled=(OCP\Config::getAppValue('files_encryption', 'enable_encryption', 'true')=='true');
+$tmpl->assign('blacklist', $blackList);
+$tmpl->assign('encryption_enabled', $enabled);
-OCP\Util::addscript('files_encryption','settings');
-OCP\Util::addscript('core','multiselect');
+OCP\Util::addscript('files_encryption', 'settings');
+OCP\Util::addscript('core', 'multiselect');
return $tmpl->fetchPage();
diff --git a/apps/files_encryption/tests/encryption.php b/apps/files_encryption/tests/encryption.php
index a7bc2df0e12..0e119f55bea 100644
--- a/apps/files_encryption/tests/encryption.php
+++ b/apps/files_encryption/tests/encryption.php
@@ -11,46 +11,46 @@ class Test_Encryption extends UnitTestCase {
$key=uniqid();
$file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
$source=file_get_contents($file); //nice large text file
- $encrypted=OC_Crypt::encrypt($source,$key);
- $decrypted=OC_Crypt::decrypt($encrypted,$key);
+ $encrypted=OC_Crypt::encrypt($source, $key);
+ $decrypted=OC_Crypt::decrypt($encrypted, $key);
$decrypted=rtrim($decrypted, "\0");
- $this->assertNotEqual($encrypted,$source);
- $this->assertEqual($decrypted,$source);
+ $this->assertNotEqual($encrypted, $source);
+ $this->assertEqual($decrypted, $source);
- $chunk=substr($source,0,8192);
- $encrypted=OC_Crypt::encrypt($chunk,$key);
+ $chunk=substr($source, 0, 8192);
+ $encrypted=OC_Crypt::encrypt($chunk, $key);
$this->assertEqual(strlen($chunk), strlen($encrypted));
- $decrypted=OC_Crypt::decrypt($encrypted,$key);
+ $decrypted=OC_Crypt::decrypt($encrypted, $key);
$decrypted=rtrim($decrypted, "\0");
- $this->assertEqual($decrypted,$chunk);
+ $this->assertEqual($decrypted, $chunk);
- $encrypted=OC_Crypt::blockEncrypt($source,$key);
- $decrypted=OC_Crypt::blockDecrypt($encrypted,$key);
- $this->assertNotEqual($encrypted,$source);
- $this->assertEqual($decrypted,$source);
+ $encrypted=OC_Crypt::blockEncrypt($source, $key);
+ $decrypted=OC_Crypt::blockDecrypt($encrypted, $key);
+ $this->assertNotEqual($encrypted, $source);
+ $this->assertEqual($decrypted, $source);
$tmpFileEncrypted=OCP\Files::tmpFile();
- OC_Crypt::encryptfile($file,$tmpFileEncrypted,$key);
+ OC_Crypt::encryptfile($file, $tmpFileEncrypted, $key);
$encrypted=file_get_contents($tmpFileEncrypted);
- $decrypted=OC_Crypt::blockDecrypt($encrypted,$key);
- $this->assertNotEqual($encrypted,$source);
- $this->assertEqual($decrypted,$source);
+ $decrypted=OC_Crypt::blockDecrypt($encrypted, $key);
+ $this->assertNotEqual($encrypted, $source);
+ $this->assertEqual($decrypted, $source);
$tmpFileDecrypted=OCP\Files::tmpFile();
- OC_Crypt::decryptfile($tmpFileEncrypted,$tmpFileDecrypted,$key);
+ OC_Crypt::decryptfile($tmpFileEncrypted, $tmpFileDecrypted, $key);
$decrypted=file_get_contents($tmpFileDecrypted);
- $this->assertEqual($decrypted,$source);
+ $this->assertEqual($decrypted, $source);
$file=OC::$SERVERROOT.'/core/img/weather-clear.png';
$source=file_get_contents($file); //binary file
- $encrypted=OC_Crypt::encrypt($source,$key);
- $decrypted=OC_Crypt::decrypt($encrypted,$key);
+ $encrypted=OC_Crypt::encrypt($source, $key);
+ $decrypted=OC_Crypt::decrypt($encrypted, $key);
$decrypted=rtrim($decrypted, "\0");
- $this->assertEqual($decrypted,$source);
+ $this->assertEqual($decrypted, $source);
- $encrypted=OC_Crypt::blockEncrypt($source,$key);
- $decrypted=OC_Crypt::blockDecrypt($encrypted,$key);
- $this->assertEqual($decrypted,$source);
+ $encrypted=OC_Crypt::blockEncrypt($source, $key);
+ $decrypted=OC_Crypt::blockDecrypt($encrypted, $key);
+ $this->assertEqual($decrypted, $source);
}
@@ -59,14 +59,14 @@ class Test_Encryption extends UnitTestCase {
$file=__DIR__.'/binary';
$source=file_get_contents($file); //binary file
- $encrypted=OC_Crypt::encrypt($source,$key);
- $decrypted=OC_Crypt::decrypt($encrypted,$key);
+ $encrypted=OC_Crypt::encrypt($source, $key);
+ $decrypted=OC_Crypt::decrypt($encrypted, $key);
$decrypted=rtrim($decrypted, "\0");
- $this->assertEqual($decrypted,$source);
+ $this->assertEqual($decrypted, $source);
- $encrypted=OC_Crypt::blockEncrypt($source,$key);
- $decrypted=OC_Crypt::blockDecrypt($encrypted,$key, strlen($source));
- $this->assertEqual($decrypted,$source);
+ $encrypted=OC_Crypt::blockEncrypt($source, $key);
+ $decrypted=OC_Crypt::blockDecrypt($encrypted, $key, strlen($source));
+ $this->assertEqual($decrypted, $source);
}
}
diff --git a/apps/files_encryption/tests/proxy.php b/apps/files_encryption/tests/proxy.php
index c3c8f4a2db0..1c800bbc5f6 100644
--- a/apps/files_encryption/tests/proxy.php
+++ b/apps/files_encryption/tests/proxy.php
@@ -13,8 +13,8 @@ class Test_CryptProxy extends UnitTestCase {
public function setUp() {
$user=OC_User::getUser();
- $this->oldConfig=OCP\Config::getAppValue('files_encryption','enable_encryption','true');
- OCP\Config::setAppValue('files_encryption','enable_encryption','true');
+ $this->oldConfig=OCP\Config::getAppValue('files_encryption','enable_encryption', 'true');
+ OCP\Config::setAppValue('files_encryption', 'enable_encryption', 'true');
$this->oldKey=isset($_SESSION['enckey'])?$_SESSION['enckey']:null;
@@ -30,7 +30,7 @@ class Test_CryptProxy extends UnitTestCase {
//set up temporary storage
OC_Filesystem::clearMounts();
- OC_Filesystem::mount('OC_Filestorage_Temporary', array(),'/');
+ OC_Filesystem::mount('OC_Filestorage_Temporary', array(), '/');
OC_Filesystem::init('/'.$user.'/files');
@@ -41,7 +41,7 @@ class Test_CryptProxy extends UnitTestCase {
}
public function tearDown() {
- OCP\Config::setAppValue('files_encryption','enable_encryption',$this->oldConfig);
+ OCP\Config::setAppValue('files_encryption', 'enable_encryption', $this->oldConfig);
if(!is_null($this->oldKey)) {
$_SESSION['enckey']=$this->oldKey;
}
@@ -51,16 +51,16 @@ class Test_CryptProxy extends UnitTestCase {
$file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
$original=file_get_contents($file);
- OC_Filesystem::file_put_contents('/file',$original);
+ OC_Filesystem::file_put_contents('/file', $original);
OC_FileProxy::$enabled=false;
$stored=OC_Filesystem::file_get_contents('/file');
OC_FileProxy::$enabled=true;
$fromFile=OC_Filesystem::file_get_contents('/file');
- $this->assertNotEqual($original,$stored);
+ $this->assertNotEqual($original, $stored);
$this->assertEqual(strlen($original), strlen($fromFile));
- $this->assertEqual($original,$fromFile);
+ $this->assertEqual($original, $fromFile);
}
@@ -72,46 +72,46 @@ class Test_CryptProxy extends UnitTestCase {
$view=new OC_FilesystemView('/'.OC_User::getUser());
$userDir='/'.OC_User::getUser().'/files';
- $rootView->file_put_contents($userDir.'/file',$original);
+ $rootView->file_put_contents($userDir.'/file', $original);
OC_FileProxy::$enabled=false;
$stored=$rootView->file_get_contents($userDir.'/file');
OC_FileProxy::$enabled=true;
- $this->assertNotEqual($original,$stored);
+ $this->assertNotEqual($original, $stored);
$fromFile=$rootView->file_get_contents($userDir.'/file');
- $this->assertEqual($original,$fromFile);
+ $this->assertEqual($original, $fromFile);
$fromFile=$view->file_get_contents('files/file');
- $this->assertEqual($original,$fromFile);
+ $this->assertEqual($original, $fromFile);
}
public function testBinary() {
$file=__DIR__.'/binary';
$original=file_get_contents($file);
- OC_Filesystem::file_put_contents('/file',$original);
+ OC_Filesystem::file_put_contents('/file', $original);
OC_FileProxy::$enabled=false;
$stored=OC_Filesystem::file_get_contents('/file');
OC_FileProxy::$enabled=true;
$fromFile=OC_Filesystem::file_get_contents('/file');
- $this->assertNotEqual($original,$stored);
+ $this->assertNotEqual($original, $stored);
$this->assertEqual(strlen($original), strlen($fromFile));
- $this->assertEqual($original,$fromFile);
+ $this->assertEqual($original, $fromFile);
$file=__DIR__.'/zeros';
$original=file_get_contents($file);
- OC_Filesystem::file_put_contents('/file',$original);
+ OC_Filesystem::file_put_contents('/file', $original);
OC_FileProxy::$enabled=false;
$stored=OC_Filesystem::file_get_contents('/file');
OC_FileProxy::$enabled=true;
$fromFile=OC_Filesystem::file_get_contents('/file');
- $this->assertNotEqual($original,$stored);
+ $this->assertNotEqual($original, $stored);
$this->assertEqual(strlen($original), strlen($fromFile));
}
}
diff --git a/apps/files_encryption/tests/stream.php b/apps/files_encryption/tests/stream.php
index 5ea0da48017..67b5e98ae67 100644
--- a/apps/files_encryption/tests/stream.php
+++ b/apps/files_encryption/tests/stream.php
@@ -10,27 +10,27 @@ class Test_CryptStream extends UnitTestCase {
private $tmpFiles=array();
function testStream() {
- $stream=$this->getStream('test1','w', strlen('foobar'));
- fwrite($stream,'foobar');
+ $stream=$this->getStream('test1', 'w', strlen('foobar'));
+ fwrite($stream, 'foobar');
fclose($stream);
- $stream=$this->getStream('test1','r', strlen('foobar'));
- $data=fread($stream,6);
+ $stream=$this->getStream('test1', 'r', strlen('foobar'));
+ $data=fread($stream, 6);
fclose($stream);
- $this->assertEqual('foobar',$data);
+ $this->assertEqual('foobar', $data);
$file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
- $source=fopen($file,'r');
- $target=$this->getStream('test2','w',0);
- OCP\Files::streamCopy($source,$target);
+ $source=fopen($file, 'r');
+ $target=$this->getStream('test2', 'w', 0);
+ OCP\Files::streamCopy($source, $target);
fclose($target);
fclose($source);
- $stream=$this->getStream('test2','r', filesize($file));
+ $stream=$this->getStream('test2', 'r', filesize($file));
$data=stream_get_contents($stream);
$original=file_get_contents($file);
$this->assertEqual(strlen($original), strlen($data));
- $this->assertEqual($original,$data);
+ $this->assertEqual($original, $data);
}
/**
@@ -40,7 +40,7 @@ class Test_CryptStream extends UnitTestCase {
* @param int size
* @return resource
*/
- function getStream($id,$mode,$size) {
+ function getStream($id, $mode, $size) {
if($id==='') {
$id=uniqid();
}
@@ -50,36 +50,36 @@ class Test_CryptStream extends UnitTestCase {
}else{
$file=$this->tmpFiles[$id];
}
- $stream=fopen($file,$mode);
- OC_CryptStream::$sourceStreams[$id]=array('path'=>'dummy'.$id,'stream'=>$stream,'size'=>$size);
- return fopen('crypt://streams/'.$id,$mode);
+ $stream=fopen($file, $mode);
+ OC_CryptStream::$sourceStreams[$id]=array('path'=>'dummy'.$id, 'stream'=>$stream, 'size'=>$size);
+ return fopen('crypt://streams/'.$id, $mode);
}
function testBinary() {
$file=__DIR__.'/binary';
$source=file_get_contents($file);
- $stream=$this->getStream('test','w', strlen($source));
- fwrite($stream,$source);
+ $stream=$this->getStream('test', 'w', strlen($source));
+ fwrite($stream, $source);
fclose($stream);
- $stream=$this->getStream('test','r', strlen($source));
+ $stream=$this->getStream('test', 'r', strlen($source));
$data=stream_get_contents($stream);
fclose($stream);
$this->assertEqual(strlen($data), strlen($source));
- $this->assertEqual($source,$data);
+ $this->assertEqual($source, $data);
$file=__DIR__.'/zeros';
$source=file_get_contents($file);
- $stream=$this->getStream('test2','w', strlen($source));
- fwrite($stream,$source);
+ $stream=$this->getStream('test2', 'w', strlen($source));
+ fwrite($stream, $source);
fclose($stream);
- $stream=$this->getStream('test2','r', strlen($source));
+ $stream=$this->getStream('test2', 'r', strlen($source));
$data=stream_get_contents($stream);
fclose($stream);
$this->assertEqual(strlen($data), strlen($source));
- $this->assertEqual($source,$data);
+ $this->assertEqual($source, $data);
}
}