Commit Graph

524 Commits

Author SHA1 Message Date
Thomas Müller 582b33bdf1 Merge pull request #4537 from owncloud/no-realpath
Do not use realpath() on includes.
2013-08-22 01:50:31 -07:00
Andreas Fischer 83afb46205 Use __DIR__ instead of dirname(__FILE__).
This is possible because we require PHP 5.3 or higher.
2013-08-21 11:01:24 +02:00
Andreas Fischer 9753e44ac2 Do not use realpath() on includes.
If the file does not exist, realpath() returns false and "include false;"
produces "Failed opening '' for inclusion" which is a useless error message.

'include' works just fine with symlinks, "./" and "../".
2013-08-21 10:52:22 +02:00
Björn Schießle 9be836814c Merge pull request #4239 from owncloud/decrypt_files_again
Enable user to decrypt files again after encryption app was disabled
2013-08-18 09:51:48 -07:00
Bjoern Schiessle 1be11bb03d don't change the etags if a file gets encrypted/decrypted to avoid that the sync client downloads all files again 2013-08-18 11:21:01 +02:00
kondou 9e8a6b704d Add _many_ newlines at the end of files 2013-08-18 11:06:59 +02:00
Bjoern Schiessle cabe92ef12 Merge branch 'master' into decrypt_files_again
Conflicts:
	apps/files_encryption/tests/keymanager.php
2013-08-17 13:15:22 +02:00
Björn Schießle d3e2f31ada Merge pull request #4352 from owncloud/encryption_clean_up
crypt.php clean up
2013-08-17 04:10:15 -07:00
Bjoern Schiessle 7adfc27caf remove whitespaces and some leftover code from testing 2013-08-15 13:13:16 +02:00
Bjoern Schiessle 7b1067c2a0 change decryptUnknownKeyfile() to decryptKeyfile(), we always use openssl_seal 2013-08-12 16:19:08 +02:00
Bjoern Schiessle 0bab8935c9 preserve mtime if file gets encrypted/decrypted 2013-08-12 14:30:43 +02:00
Bjoern Schiessle b982868c14 fix array declaration 2013-08-12 13:59:49 +02:00
Bjoern Schiessle 44d201a526 Merge branch 'encryption_clean_up' of github.com:owncloud/core into encryption_clean_up 2013-08-09 15:57:07 +02:00
Bjoern Schiessle 5ba8d38b7f remove old comments, TODos, etc. 2013-08-09 15:55:17 +02:00
Thomas Müller c458e785a1 fixing typos and PHPDoc 2013-08-08 15:08:58 +02:00
Bjoern Schiessle 512f98cac9 remove todo item 2013-08-08 13:38:15 +02:00
Bjoern Schiessle b39d2d1938 more error messages which might be useful for the user to debug his server config 2013-08-08 08:39:11 +02:00
Bjoern Schiessle 7aeb0068be also write error message to the log 2013-08-08 08:38:52 +02:00
Bjoern Schiessle cfbdad9cdb catch broken server config and disable encryption app. 2013-08-08 08:38:37 +02:00
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