Jeśli chodzi o obsługę PHP7 w PLA, to jedynym problemem jest wykorzystanie mcrypt. Jeżeli nie ma w systemie, to wszystko działa poprawnie. Jeżeli jest zainstalowane w systemie, to trzeba zakomentować kilkanaście linijek w pliku lib/functions.php:
--- /usr/local/www/phpldapadmin/lib/functions.php.orig 2017-11-07 00:23:45.000000000 +0100
+++ /usr/local/www/phpldapadmin/lib/functions.php 2017-11-14 23:53:42.029822000 +0100
@@ -745,15 +745,15 @@ function blowfish_encrypt($data,$secret=
if (! trim($secret))
return $data;
- if (function_exists('mcrypt_module_open') && ! empty($data)) {
- $td = mcrypt_module_open(MCRYPT_BLOWFISH,'',MCRYPT_MODE_ECB,'');
- $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td),MCRYPT_DEV_URANDOM);
- mcrypt_generic_init($td,substr($secret,0,mcrypt_enc_get_key_size($td)),$iv);
- $encrypted_data = base64_encode(mcrypt_generic($td,$data));
- mcrypt_generic_deinit($td);
-
- return $encrypted_data;
- }
+## if (function_exists('mcrypt_module_open') && ! empty($data)) {
+## $td = mcrypt_module_open(MCRYPT_BLOWFISH,'',MCRYPT_MODE_ECB,'');
+## $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td),MCRYPT_DEV_URANDOM);
+## mcrypt_generic_init($td,substr($secret,0,mcrypt_enc_get_key_size($td)),$iv);
+## $encrypted_data = base64_encode(mcrypt_generic($td,$data));
+## mcrypt_generic_deinit($td);
+##
+## return $encrypted_data;
+## }
if (file_exists(LIBDIR.'blowfish.php'))
require_once LIBDIR.'blowfish.php';
@@ -801,15 +801,15 @@ function blowfish_decrypt($encdata,$secr
if (! trim($secret))
return $encdata;
- if (function_exists('mcrypt_module_open') && ! empty($encdata)) {
- $td = mcrypt_module_open(MCRYPT_BLOWFISH,'',MCRYPT_MODE_ECB,'');
- $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td),MCRYPT_DEV_URANDOM);
- mcrypt_generic_init($td,substr($secret,0,mcrypt_enc_get_key_size($td)),$iv);
- $decrypted_data = trim(mdecrypt_generic($td,base64_decode($encdata)));
- mcrypt_generic_deinit($td);
-
- return $decrypted_data;
- }
+## if (function_exists('mcrypt_module_open') && ! empty($encdata)) {
+## $td = mcrypt_module_open(MCRYPT_BLOWFISH,'',MCRYPT_MODE_ECB,'');
+## $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td),MCRYPT_DEV_URANDOM);
+## mcrypt_generic_init($td,substr($secret,0,mcrypt_enc_get_key_size($td)),$iv);
+## $decrypted_data = trim(mdecrypt_generic($td,base64_decode($encdata)));
+## mcrypt_generic_deinit($td);
+##
+## return $decrypted_data;
+## }
if (file_exists(LIBDIR.'blowfish.php'))
require_once LIBDIR.'blowfish.php';
I wszystko działa poprawnie.