Commit Graph

505 Commits

Author SHA1 Message Date
Bjoern Schiessle 97e910e087 make methods private which are not used from outside 2013-08-08 08:37:39 +02:00
Bjoern Schiessle 23e9721644 use OC\Files\View to read encrypted file, so that it also works with external storages 2013-07-31 16:35:14 +02:00
Bjoern Schiessle 2549322763 we need to use the path relative to data/ 2013-07-30 18:17:33 +02:00
Bjoern Schiessle a212c98125 handle error if we can't handle the given path 2013-07-30 15:27:59 +02:00
Bjoern Schiessle a6ced6b53f remove unused method, the right one is in util.php 2013-07-30 14:28:24 +02:00
Bjoern Schiessle 3640c99462 encrypt/decrypt file versions 2013-07-30 12:19:04 +02:00
Bjoern Schiessle ba18452eda only write keyfiles if it was a new file, otherwise nothing changed 2013-07-30 10:43:16 +02:00
Bjoern Schiessle 223d3c91d6 use path relative to data/ 2013-07-30 10:14:17 +02:00
Bjoern Schiessle a7a7ef2b3a improved error handling 2013-07-30 09:48:30 +02:00
Bjoern Schiessle b6fa0e4eef working decrypt files method 2013-07-29 17:06:05 +02:00
Björn Schießle e15e394fcc add ajax call to decrypt all files
Conflicts:
	apps/files_encryption/lib/crypt.php
2013-07-29 13:39:05 +02:00
Björn Schießle 2c8e5ec84f user interface to allow user to decrypt all his files once the encryption app was disabled
Conflicts:
	settings/templates/personal.php
2013-07-29 13:36:06 +02:00
Björn Schießle 87063918f2 remove wrong closing bracket 2013-07-05 16:05:05 +02:00
Björn Schießle 9575c2f37c added helper function to escape glob pattern
Conflicts:

	apps/files_encryption/lib/helper.php
2013-07-05 16:03:20 +02:00
Björn Schießle 15cb8e4efd only check for external mount points if the external storage app is enabled 2013-07-05 16:00:34 +02:00
Björn Schießle f9c337dd21 only escape glob pattern 2013-07-05 16:00:17 +02:00
Björn Schießle 93730a090b del share keys from correct location 2013-07-05 16:00:08 +02:00
Björn Schießle af2cd6f541 always return normalized path 2013-07-05 15:59:57 +02:00
Björn Schießle 3043dbfb95 delete file keys from the correct location 2013-07-05 15:59:46 +02:00
Björn Schießle eb2587a08f move isSystemWideMountPoint() to util.php 2013-07-05 15:59:29 +02:00
Björn Schießle f2de4cb342 some performance improvements, check for system wide mounts only once while writing share keys 2013-07-05 15:59:19 +02:00
Björn Schießle 2e56f0e2f8 fix path to OC_Mount_Config 2013-07-05 15:59:06 +02:00
Björn Schießle 3e4dcafa89 handle system wide mount points 2013-07-05 15:58:55 +02:00
VicDeo f67fc78531 Merge pull request #3899 from owncloud/encryption_check_php_version
check php version, the encryption app needs php >= 5.3.3
2013-07-04 06:53:17 -07:00
Björn Schießle 4c1820a2a1 Merge pull request #3858 from owncloud/more_ssl_error_messages
add openssl_error_string() output to the owncloud.log
2013-07-02 07:58:22 -07:00
Björn Schießle 4d4484fac1 Merge pull request #3870 from owncloud/reset_migration_status
introduce pre-disable-app hook and first usage in files_encryption
2013-07-02 07:26:48 -07:00
Thomas Müller a7f2563990 typo 2013-07-01 21:12:21 +02:00
Björn Schießle d5c4854708 cast result to bool 2013-07-01 17:18:16 +02:00
Björn Schießle 16a719173f add correct php version 2013-07-01 12:23:26 +02:00
Björn Schießle adcee5b695 check php version, the encryption app needs php >= 5.3.3 2013-07-01 12:16:36 +02:00
Björn Schießle 2e6ebe1ab4 fix function documentation 2013-06-27 14:14:25 +02:00
Björn Schießle c4aef89278 introduce pre-disable-app hook and use it for the encryption app to reset migration status if the app was disabled 2013-06-27 14:09:22 +02:00
Björn Schießle 5a20c8b66f add openssl_error_string() output to the owncloud.log 2013-06-26 15:51:22 +02:00
Jörn Friedrich Dreyer c79f7f4f3c fix numRows usage in files_encryption 2013-06-24 16:29:59 +02:00
Björn Schießle fe61230cc1 always have a defined return value 2013-06-19 16:55:31 +02:00
Björn Schießle e2e370f199 some more error messages 2013-06-19 15:58:34 +02:00
Björn Schießle 83d98e2d8b add some more error messages, in case something went wrong 2013-06-19 15:52:33 +02:00
Florin Peter 8566881758 fix for path_hash not unique as reported at #3641 2013-06-13 20:52:34 +02:00
Florin Peter 35da408222 fix memory problems as reported at #3620 2013-06-13 20:51:22 +02:00
Björn Schießle 7cfb0dc406 Merge branch 'master' into files_encryption_check_private_key
Conflicts:
	apps/files_encryption/appinfo/app.php
	apps/files_encryption/lib/util.php
2013-06-13 13:17:35 +02:00
Björn Schießle bc2862fcb9 Merge branch 'master' into files_encryption_upgrade_fix 2013-06-13 12:53:29 +02:00
Björn Schießle 77944cf7b8 fix typo in var name 2013-06-13 10:11:23 +02:00
Björn Schießle 27fcdb3af5 Merge branch 'master' into files_encryption_upgrade_fix
Conflicts:
	apps/files_encryption/tests/crypt.php
2013-06-12 20:53:45 +02:00
Björn Schießle c78a90fd54 use number of manipulated rows as idicator if it was possible to enter the migration mode 2013-06-12 12:21:11 +02:00
Björn Schießle 20ddd6e1c7 Merge branch 'master' into files_encryption_check_private_key
Conflicts:
	apps/files_encryption/tests/crypt.php
2013-06-11 15:19:02 +02:00
Björn Schießle 3ec6b19cdf use constants for different migration status 2013-06-11 13:07:39 +02:00
Björn Schießle 5fafd55108 make sure that only one process can enter the migration mode 2013-06-11 12:03:50 +02:00
Morris Jobke 1da112750e Merge pull request #3647 from owncloud/missing_backticks
add missing backticks all over the place
2013-06-10 05:15:07 -07:00
Björn Schießle 13017ce9e1 Merge branch 'master' into files_encryption_check_private_key
Conflicts:
	settings/ajax/changepassword.php
2013-06-10 12:12:07 +02:00
Jörn Friedrich Dreyer 124f34422c add missing backticks all over the place 2013-06-10 09:53:29 +02:00
Björn Schießle d7a9852f7b use pre_setPassword hook to update the encryption keys if the back-end doesn't support password change; improved output to let the admin know what happened 2013-06-06 13:32:02 +02:00
Florin Peter 14ac4fab05 better handling for http post 2013-06-04 00:41:47 +02:00
Florin Peter ef97481a0d changed redirect handling 2013-06-03 23:41:57 +02:00
Florin Peter dc8bcf0688 reformat code 2013-06-03 18:42:13 +02:00
Björn Schießle 471d2b732c introduce decryptPrivateKey() method which also checks if the result is a valid private key to avoid additional checks on various places 2013-06-03 14:19:31 +02:00
Florin Peter 46e5e9bd73 cleanup unused method legacyKeyRecryptKeyfile 2013-05-31 22:49:32 +02:00
Florin Peter a134ffcf2c code optimized and cleaned up unused vars 2013-05-31 16:52:33 +02:00
Florin Peter e9d1ea712c allow the user to login but do not allow upload and show error message on the web 2013-05-31 15:57:18 +02:00
Florin Peter 2e3bfdb12c check if the decrypted private key is valid on login and on read/write files 2013-05-31 13:58:58 +02:00
Florin Peter 1bfe975938 Merge branch 'master' into files_encryption_upgrade_fix
Conflicts:
	apps/files_encryption/lib/util.php
2013-05-31 12:58:12 +02:00
Florin Peter 96ef926161 normalize path to prevent following split to fail 2013-05-31 01:57:32 +02:00
Florin Peter 8e324aad38 fix re-encrypt legacy files 2013-05-31 01:36:49 +02:00
Florin Peter 986e9dd362 use legacyDecrypt to decrypt key file like the previous files_encryption 2013-05-31 01:35:48 +02:00
Florin Peter eaa4f92275 added our own file extension .part will not work here if we use file_get_contents so we used our own extension '.etmp' 2013-05-30 22:07:36 +02:00
Florin Peter 8c17f26226 fixed problems with file_get_contents and file_put_contents this problem was related to text editor with big text files 2013-05-30 01:13:22 +02:00
Florin Peter 313631edf6 Merge branch 'master' into file_encryption_external_storage_fixes
Conflicts:
	apps/files_encryption/hooks/hooks.php
2013-05-30 00:45:29 +02:00
Florin Peter 1202ab9995 Merge branch 'master' into file_encryption_external_storage_fixes 2013-05-29 19:19:40 +02:00
Florin Peter d265264542 fix for share folder on external storage 2013-05-29 19:11:39 +02:00
Björn Schießle b44192f366 check list of users with access to the file from the bottom to the top. This way we avoid calling getFileInfo() on every dir, which creates a lot of overhead, especially for external storages 2013-05-29 13:10:26 +02:00
Florin Peter efd629462e changes after review 2013-05-29 12:23:33 +02:00
Florin Peter c398fc59ad Merge branch 'master' into remove_unused_vars
Conflicts:
	apps/files_encryption/hooks/hooks.php
	apps/files_encryption/lib/proxy.php
	apps/files_encryption/lib/session.php
	apps/files_encryption/lib/stream.php
2013-05-29 09:21:00 +02:00
Florin Peter 71a532fc4d fixed if fopen returns false typically on external storage 2013-05-28 20:50:14 +02:00
Florin Peter 4b4b447e2a fixed missing convert to new session handler 2013-05-28 17:06:37 +02:00
Florin Peter 6ae7bde788 fixed encryption session namespace to avoid problems 2013-05-28 17:04:35 +02:00
Robin Appelman cc0cf93136 merge master into sessionclass 2013-05-28 14:55:42 +02:00
Florin Peter 09b54ccb2b Merge branch 'master' into remove_unused_vars
Conflicts:
	apps/files_encryption/lib/session.php
	apps/files_encryption/lib/util.php
2013-05-28 11:00:49 +02:00
Florin Peter 0041711fe3 fix for undefined index 2013-05-28 09:36:14 +02:00
Florin Peter 6f9e425939 fix for losing private key while being logged in and accessing a public link 2013-05-28 09:27:04 +02:00
Robin Appelman 9c99048429 fix syntax error 2013-05-28 01:31:26 +02:00
Robin Appelman 44f9af5a7f Use the new session wrapper 2013-05-28 01:04:09 +02:00
Florin Peter e1e1c58969 changed to public log api 2013-05-27 20:51:52 +02:00
Florin Peter 7224fc98b2 replace == with === and replace != with !== 2013-05-27 20:44:38 +02:00
Björn Schießle 2c3c60c1af Merge branch 'master' into remove_unused_vars
Conflicts:
	apps/files_encryption/hooks/hooks.php
	apps/files_encryption/lib/crypt.php
	apps/files_encryption/lib/proxy.php
2013-05-27 18:09:35 +02:00
Björn Schießle 4c05259ccf legacyBlockDecryprt() needs to be public 2013-05-27 17:35:38 +02:00
Björn Schießle df22a7c495 make legacyDecrypt() private als always call legacyBlockDecrypt() from other classes 2013-05-27 17:35:28 +02:00
Björn Schießle 8b35578833 fix migration from old to new encryption 2013-05-27 17:35:06 +02:00
Florin Peter 5d32e214b7 reformat code 2013-05-27 17:26:58 +02:00
Florin Peter 690bf9b8c4 Merge branch 'master' into remove_unused_vars
Conflicts:
	apps/files_encryption/lib/util.php
2013-05-27 17:26:35 +02:00
Björn Schießle 1a3f7891ea remove unused varaibles 2013-05-27 15:31:26 +02:00
Florin Peter 80433fc4c4 Merge branch 'master' into file_encryption_util_is_error
Conflicts:
	apps/files_encryption/lib/util.php
2013-05-27 14:41:53 +02:00
Björn Schießle 5e243b48bb Merge pull request #3481 from owncloud/firsttime_enc
fix first time encryption after app was enabled
2013-05-27 05:17:31 -07:00
Florin Peter 89f0c8f39d added check by numRows()
changed to public api where it was possible
reformat code to comply with the coding guidelines
2013-05-27 12:41:55 +02:00
Florin Peter 788c5940f0 fixed error rising from fetchRow 2013-05-25 23:20:55 +02:00
Florin Peter 9a6cd89a69 added OC_DB::isError and logging 2013-05-25 21:33:05 +02:00
Björn Schießle f56802a437 no use the recoveryPassword var instead of accessing the POST array 2013-05-24 18:37:58 +02:00
Björn Schießle 5ce4149e75 fix first time encryption after app was enabled 2013-05-24 17:35:00 +02:00
Florin Peter 6c8de5ae6d fixes after review from @DeepDiver1975 2013-05-23 23:56:31 +02:00
Björn Schießle 7b07168c46 code clean up; nicer solution to solve the public link share problem if a user is logged in 2013-05-23 21:18:31 +02:00
Björn Schießle a9ebf2aabe fix public link share if a user is logged in 2013-05-23 20:30:07 +02:00
Florin Peter c6722581f9 fix pgsql error 2013-05-22 02:02:42 +02:00
Florin Peter afbfa742d7 improved tests 2013-05-22 01:11:55 +02:00
Florin Peter 9ca9a22c6a fixed finding encrypted files in subfolders and removed unused code 2013-05-22 00:54:47 +02:00
Florin Peter 1deeec93b7 fixed postFileSize 2013-05-21 21:09:25 +02:00
Björn Schießle 9d324db054 fix path to 3rdparty apps 2013-05-21 12:33:32 +02:00
Björn Schießle 4c27c7e199 fix path, needs to be relative to data/ 2013-05-21 12:22:03 +02:00
Björn Schießle 64591cf754 move 3rdparty dependencies to app 2013-05-21 10:30:24 +02:00
Florin Peter 4bf840e2ca cleanup unused code optimize tests 2013-05-21 00:00:55 +02:00
Florin Peter 1fa2f19ee4 removed dead code for delShareKey 2013-05-20 21:24:39 +02:00
Florin Peter 8e0540d0e4 key creation should never override a private or public key 2013-05-20 21:22:03 +02:00
Florin Peter 3b850a2524 reformat code added and changed phpdoc 2013-05-20 01:24:36 +02:00
Florin Peter 5d572c3449 update phpdoc 2013-05-19 22:31:00 +02:00
Florin Peter ddda2a1f79 changed database column 'recovery' to 'recovery_enabled' because recovery is a pgsql keyword
more info about pgsql keywords http://www.postgresql.org/docs/9.1/static/sql-keywords-appendix.html
2013-05-19 07:04:31 +02:00
Florin Peter 681252669a changed migrationStatus to migration_status for pgsql 2013-05-18 22:10:00 +02:00
Florin Peter 3aa48616a6 remove unused code 2013-05-17 22:44:45 +02:00
Florin Peter cea9208cec fix broken legacy tests 2013-05-17 21:59:53 +02:00
Björn Schießle eaa61b8539 fix migration to new encryption 2013-05-17 17:29:32 +02:00
Björn Schießle 002445e23d some typo fixed 2013-05-17 14:49:54 +02:00
Björn Schießle 93771f735b gremove unused code 2013-05-17 14:13:05 +02:00
Björn Schießle 0b40c1d08a Merge branch 'files_encryption' of github.com:owncloud/core into files_encryption 2013-05-17 11:20:17 +02:00
Björn Schießle ca6a77d39b upgrade from old encryption to the new one needs to generate share keys too 2013-05-17 11:15:36 +02:00
Florin Peter 42b4963dd0 moved enable and disable recovery to Helper class for unit tests 2013-05-17 00:58:41 +02:00
Florin Peter 3793e4d2d6 fix for recover files in subfolder 2013-05-16 22:57:55 +02:00
Florin Peter d40d6aa358 fix typo in addRecoveryKeys 2013-05-16 22:39:09 +02:00
Björn Schießle 9d1e60325c allow admin to recover users files in case of password lost 2013-05-16 14:53:04 +02:00
Florin Peter c651950a17 fix for re-share and removed check if file exists because we are sometime into a pre_put_contents hook 2013-05-16 00:34:45 +02:00
Florin Peter c0c4fe5fd3 fix if file is not yet created 2013-05-16 00:31:17 +02:00
Florin Peter ec2e193a44 removed unused code 2013-05-15 21:01:03 +02:00
Björn Schießle 57c0a7ed69 add recovery key to all files if the user enabled the feature and removes them again on disable 2013-05-15 17:56:45 +02:00
Björn Schießle 64d94c540a enable admin to change the recovery password 2013-05-15 16:12:20 +02:00
Björn Schießle 5b160edebb check if the user knows the correct recovery password before changing the recovery key settings 2013-05-15 14:02:13 +02:00
Florin Peter 499fe6ca8e disabled FileProxy in Keymanager::getPrivateKey 2013-05-15 02:36:23 +02:00
Florin Peter ddedf20106 prevent of infinite loop with FileProxy 2013-05-15 02:34:36 +02:00
Florin Peter 0a7aa6e8cd fix for Allowed memory size of xx bytes exhausted while reading big files 2013-05-14 22:32:39 +02:00
Florin Peter 84c56a5d56 fix for zero size files 2013-05-14 21:29:24 +02:00
Florin Peter 517105660d fix for public link share 2013-05-14 20:11:07 +02:00
Florin Peter 81ae4cb5d0 added test for public shared file via link 2013-05-14 00:00:20 +02:00
Florin Peter a4e9e2fc79 added post_deleteUser hook for cleanup public key 2013-05-13 22:49:27 +02:00
Florin Peter b2d021b2a5 added post_createUser hook 2013-05-13 22:34:11 +02:00
Florin Peter 61ed347d26 added handling for public file access via files_sharing link 2013-05-13 21:24:59 +02:00
Björn Schießle aa3eb6bb5b don't handle public share keys in lib/public/share.php but in apps/files_encryption/lib/util.php instead 2013-05-13 17:40:57 +02:00
Björn Schießle 517efdf952 don't create a recovery user, only generate recovery key similar to the public link share key 2013-05-13 17:26:21 +02:00
Björn Schießle d1e2e47592 generate random key name for share key to avoid name conflicts 2013-05-13 15:15:35 +02:00
Björn Schießle a6ef25ba08 use preShare hook only to check if all pub keys are available and the postShare hook to finaly update the shareKeys if the file was shared successfully 2013-05-13 14:28:45 +02:00
Florin Peter e88595638c fix for webdav 2013-05-11 00:23:30 +02:00
Florin Peter e25aa78caf added helper class and moved hook registration to it 2013-05-09 19:36:18 +02:00
Sam Tuke 163fe64016 Fixes to code formatting and indentation 2013-05-09 18:24:07 +02:00
Sam Tuke 92e28839ff Improvements to code formatting & indentation 2013-05-09 18:16:59 +02:00
Sam Tuke 3003dd46d1 Implemented initial recoveryAdmin functionality in crypto file proxy 2013-05-09 18:09:20 +02:00
Sam Tuke 101e037529 Fixed bugs with pre_share hook usage
Made sure new user being shared to is added to array of sharing users
2013-05-09 14:43:06 +02:00
Sam Tuke 28866de44b Added pre_share hook
Switched it for post_share hook in encryption hooks
Stop a file from being shared if the encryption procedure fails for any users
2013-05-08 16:22:08 +02:00