diff options
author | Bjoern Schiessle <schiessle@owncloud.com> | 2013-08-01 11:50:56 +0200 |
---|---|---|
committer | Bjoern Schiessle <schiessle@owncloud.com> | 2013-08-08 08:38:37 +0200 |
commit | cfbdad9cdb5c978225af796c128e4ad7bd011eee (patch) | |
tree | de220cd145ba5e1f0cf4f4da31358da368eff383 | |
parent | 0deae7b86fbbcb8aaf4ada73950fd5a9b56f719f (diff) | |
download | nextcloud-server-cfbdad9cdb5c978225af796c128e4ad7bd011eee.tar.gz nextcloud-server-cfbdad9cdb5c978225af796c128e4ad7bd011eee.zip |
catch broken server config and disable encryption app.
-rw-r--r-- | apps/files_encryption/hooks/hooks.php | 2 | ||||
-rwxr-xr-x | apps/files_encryption/lib/helper.php | 12 |
2 files changed, 13 insertions, 1 deletions
diff --git a/apps/files_encryption/hooks/hooks.php b/apps/files_encryption/hooks/hooks.php index 741df166b70..e933207a9e1 100644 --- a/apps/files_encryption/hooks/hooks.php +++ b/apps/files_encryption/hooks/hooks.php @@ -40,7 +40,7 @@ class Hooks { public static function login($params) {
$l = new \OC_L10N('files_encryption');
//check if all requirements are met
- if(!Helper::checkRequirements() ) {
+ if(!Helper::checkRequirements() || !Helper::checkConfiguration() ) {
$error_msg = $l->t("Missing requirements.");
$hint = $l->t('Please make sure that PHP 5.3.3 or newer is installed and that the OpenSSL PHP extension is enabled and configured properly. For now, the encryption app has been disabled.');
\OC_App::disable('files_encryption');
diff --git a/apps/files_encryption/lib/helper.php b/apps/files_encryption/lib/helper.php index 6eee8fed6a6..d3d4afff912 100755 --- a/apps/files_encryption/lib/helper.php +++ b/apps/files_encryption/lib/helper.php @@ -232,6 +232,18 @@ class Helper { return (bool) $result; } + + /** + * check some common errors if the server isn't configured properly for encryption + * @return bool true if configuration seems to be OK + */ + public static function checkConfiguration() { + if(openssl_pkey_new(array('private_key_bits' => 4096))) { + return true; + } else { + return false; + } + } /** * @brief glob uses different pattern than regular expressions, escape glob pattern only |