Debian 12 : Warning sur phpseclib

Bonjour,

Sous Debian 12 et Jeedom 4.5, il y a des warnings dans cron_execution.log liés à la phpseclib.

PHP Deprecated:  Creation of dynamic property phpseclib\Crypt\Rijndael::$name is deprecated in /usr/share/php/phpseclib/Net/SSH2.php on line 2026
PHP Deprecated:  Creation of dynamic property phpseclib\Crypt\Rijndael::$name is deprecated in /usr/share/php/phpseclib/Net/SSH2.php on line 2056
PHP Deprecated:  Creation of dynamic property phpseclib\Crypt\Hash::$name is deprecated in /usr/share/php/phpseclib/Net/SSH2.php on line 2101
PHP Deprecated:  Creation of dynamic property phpseclib\Crypt\Hash::$name is deprecated in /usr/share/php/phpseclib/Net/SSH2.php on line 2131

Problème apparemment corrigé à partir de la version 3.0.22 de la library.
Est-il possible de mettre à jour le plugin responsable en conséquent ?

Bonsoir @Madcow,

Humm… Bizarre :confused: la version utilisée dans le plugin SSH-Manager est la version 3.0.42. (version qui n’est d’ailleurs pas dans le /usr/share/php/phpseclib mais dans le répertoire du plugin :open_mouth: )

J’ai depuis très longtemps un Debian 12 parmi mes jeedom de tests, avec la version alpha 4.5 de Jeedom dessus, et je n’ai vu aucun warning de ce type dans le cron_execution.

Est-on sûr que c’est le plugin SSH-Manager qui génère ces logs ?

TiTidom.

Bonjour,

Merci pour ton retour.

Ahaha en effet j’avais vu que la lib était dans le répertoire du plugin mais je pensais qu’elle était copiée. Et incapable de déterminer la version…
Et du coup j’ai foncé bille en tête :sweat_smile:

Dans ce cas j’ai une autre piste : plugin-nut_free.

Je vais regarder ça demain.
J’enlève le tag en attendant.

1 « J'aime »

Pas de soucis :slight_smile:

Je vais suivre le sujet au cas où :slight_smile: Si besoin, je suis pas loin :stuck_out_tongue:

Bonne soirée,
TiTidom.

1 « J'aime »

Salut

Je ne pense pas que c’est plugin-nut_free car je n’ai pas cette erreur dans les log avec le Plugin.

Bonjour,

D’après que ce j’ai pu voir rapidement le plugin installe via apt php-phpseclib.
Or cela installe normalement la version 2.0.42 sous Debian 12 :
https://packages.debian.org/search?keywords=php-phpseclib

root@Jeedom:~# apt policy php-phpseclib
php-phpseclib:
  Installé : 2.0.42-1+deb12u2
  Candidat : 2.0.42-1+deb12u2

J’ai essayé de forcer l’installation de php-phpseclib3 (mais qui n’installe que la 3.0.19 donc < 3.0.22 qui en théorie corrige le bug) mais j’ai alors eu des warnings sur openvpn (j’utilise les dns Jeedom) et j’ai alors rollback ma VM car je compte me coucher tôt :wink:

Donc c’est étrange que tu n’ais pas d’erreurs.

Tu as quelle version de la lib installée ?


Merci.
Étrange … à creuser.

C’est bien dans le cron_execution que tu n’as rien ?

Oui c’est bien dans les log Cron exécution, J’ai d’autre message d’erreur mais pas le tiens

1 « J'aime »

Bonjour,

Une fois désactivé mon équipement Nut je n’ai plus les erreurs dans le log. Donc cela vient bien du plugin-nut_free.
Maintenant reste à comprendre pourquoi j’ai ces erreurs et pas toi.

Bonjour,

Dans plugins/Nut-free/plugin_info j’ai modifié packages.json pour installer php-phpseclib3

{
    "apt" : {
      "nut-client" : {},
      "php-phpseclib3" : {}
    }
    
}
  1. Puis j’ai relancé les dépendances.

  2. J’ai modifié dans plugins/Nut-free/core/class/Nut_free.class.php le tout début :

set_include_path(get_include_path() . get_include_path().'/phpseclib3');
include('Net/SSH2.php');
include('Crypt/PublicKeyLoader.php');
include('autoload.php');

use phpseclib3\Net\SSH2;

Le plugin fonctionne toujours et je n’ai plus les erreurs dans le cron_execution.log.

Cependant j’aimerais bien idéalement que le plugin soit modifié pour qu’il utilise plugin-sshmanager.
Si j’ai le temps je vais regarder.

3 « J'aime »