]> git.mxchange.org Git - friendica.git/commitdiff
Adds checks for mcrypt module for RINO2
authorFabrixxm <fabrix.xm@gmail.com>
Tue, 22 Sep 2015 07:50:24 +0000 (09:50 +0200)
committerFabrixxm <fabrix.xm@gmail.com>
Tue, 22 Sep 2015 07:50:24 +0000 (09:50 +0200)
- check for module on install
- check for module when RINO2 is enabled in admin
- check for module when RINO2 is used in communications

include/items.php
mod/admin.php
mod/dfrn_notify.php
mod/install.php

index b00942b5aee745b110a7bc2048f155ce4c6a4df1..63782675704f213b98ccbdafa3c63faa7bd7d2dc 100644 (file)
@@ -2000,6 +2000,8 @@ function dfrn_deliver($owner,$contact,$atom, $dissolve = false) {
 
        $rino = get_config('system','rino_encrypt');
        $rino = intval($rino);
+       // use RINO1 if mcrypt isn't installed and RINO2 was selected
+       if ($rino==2 and !function_exists('mcrypt_create_iv')) $rino=1;
 
        logger("Local rino version: ". $rino, LOGGER_DEBUG);
 
index 002d332cb6ad62bc345a4d158a1a6faa88319a51..878508a23fe7be1c8b5480bdaeb7e3a65e7c1338 100644 (file)
@@ -551,7 +551,12 @@ function admin_page_site_post(&$a){
        set_config('system','old_pager', $old_pager);
        set_config('system','only_tag_search', $only_tag_search);
 
-       set_config('system','rino_encrypt', $rino);
+       
+       if ($rino==2 and !function_exists('mcrypt_create_iv')){
+               notice(t("RINO2 needs mcrypt php extension to work."));         
+       } else {        
+               set_config('system','rino_encrypt', $rino);
+       }
 
        set_config('system','embedly', $embedly);
 
index fe7adca4134d69e882da3feef4d4c9de28ae176a..fcc5726548fea9ae944c204fbbd7362ff24c8034 100644 (file)
@@ -137,6 +137,8 @@ function dfrn_notify_post(&$a) {
 
        $rino = get_config('system','rino_encrypt');
        $rino = intval($rino);
+       // use RINO1 if mcrypt isn't installed and RINO2 was selected
+       if ($rino==2 and !function_exists('mcrypt_create_iv')) $rino=1;
 
        logger("Local rino version: ". $rino, LOGGER_DEBUG);
 
@@ -307,7 +309,9 @@ function dfrn_notify_content(&$a) {
 
                $rino = get_config('system','rino_encrypt');
                $rino = intval($rino);
-
+               // use RINO1 if mcrypt isn't installed and RINO2 was selected
+               if ($rino==2 and !function_exists('mcrypt_create_iv')) $rino=1;
+               
                logger("Local rino version: ". $rino, LOGGER_DEBUG);
 
                // if requested rino is lower than enabled local rino, lower local rino version
index 99ebfc6bab3a792ace3514b68c8dcb3785eeb0b1..182495d258cb7c74b53c517c6eee2e31b65fc47b 100755 (executable)
@@ -392,6 +392,7 @@ function check_funcs(&$checks) {
        check_add($ck_funcs, t('OpenSSL PHP module'), true, true, "");
        check_add($ck_funcs, t('mysqli PHP module'), true, true, "");
        check_add($ck_funcs, t('mb_string PHP module'), true, true, "");
+       check_add($ck_funcs, t('mcrypt PHP module'), true, true, "");
 
 
        if(function_exists('apache_get_modules')){
@@ -422,7 +423,13 @@ function check_funcs(&$checks) {
                $ck_funcs[4]['status']= false;
                $ck_funcs[4]['help']= t('Error: mb_string PHP module required but not installed.');
        }
+       if(! function_exists('mcrypt_create_iv')){
+               $ck_funcs[5]['status']= false;
+               $ck_funcs[5]['help']= t('Error: mcrypt PHP module required but not installed.');
+       }
 
+       
+       
        $checks = array_merge($checks, $ck_funcs);
 
        /*if((x($_SESSION,'sysmsg')) && is_array($_SESSION['sysmsg']) && count($_SESSION['sysmsg']))