From: Björn Schießle Date: Mon, 1 Jul 2013 10:16:36 +0000 (+0200) Subject: check php version, the encryption app needs php >= 5.3.3 X-Git-Tag: v6.0.0alpha2~524^2~7 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=adcee5b695c25bc9e06dc9aeddb4ae2713a2ea05;p=nextcloud-server.git check php version, the encryption app needs php >= 5.3.3 --- diff --git a/apps/files_encryption/appinfo/app.php b/apps/files_encryption/appinfo/app.php index d97811bb791..78b226be013 100644 --- a/apps/files_encryption/appinfo/app.php +++ b/apps/files_encryption/appinfo/app.php @@ -34,10 +34,9 @@ if (!OC_Config::getValue('maintenance', false)) { $view = new OC_FilesystemView('/'); - $sessionReady = false; - if(extension_loaded("openssl")) { + $sessionReady = OCA\Encryption\Helper::checkRequirements(); + if($sessionReady) { $session = new \OCA\Encryption\Session($view); - $sessionReady = true; } $user = \OCP\USER::getUser(); diff --git a/apps/files_encryption/hooks/hooks.php b/apps/files_encryption/hooks/hooks.php index e39e068cc5d..786de177e89 100644 --- a/apps/files_encryption/hooks/hooks.php +++ b/apps/files_encryption/hooks/hooks.php @@ -39,10 +39,10 @@ class Hooks { */ public static function login($params) { $l = new \OC_L10N('files_encryption'); - //check if openssl is available - if(!extension_loaded("openssl") ) { - $error_msg = $l->t("PHP module OpenSSL is not installed."); - $hint = $l->t('Please ask your server administrator to install the module. For now the encryption app was disabled.'); + //check if all requirements are met + if(!Helper::checkRequirements() ) { + $error_msg = $l->t("Missing requirements."); + $hint = $l->t('Please make sure that the OpenSSL module and PHP >0 5.3.3 is installed. For now the encryption app was disabled.'); \OC_App::disable('files_encryption'); \OCP\Util::writeLog('Encryption library', $error_msg . ' ' . $hint, \OCP\Util::ERROR); \OCP\Template::printErrorPage($error_msg, $hint); diff --git a/apps/files_encryption/lib/helper.php b/apps/files_encryption/lib/helper.php index a22c139c503..f6201c7e5ff 100755 --- a/apps/files_encryption/lib/helper.php +++ b/apps/files_encryption/lib/helper.php @@ -208,4 +208,20 @@ class Helper { header('Location: ' . $location . '?p=' . $post); exit(); } + + + /** + * check requirements for encryptoin app. + * @return bool true if requirements are met + */ + public static function checkRequirements() { + $result = true; + + //openssl extension needs to be loaded + $result &= extension_loaded("openssl"); + // we need php >= 5.3.3 + $result &= version_compare(phpversion(), '5.3.11', '>='); + + return $result; + } } \ No newline at end of file