Anomalie #4945
Logs d'erreur en série sur tentative d'exécution de la commande git log
0%
Description
Dans header_template.inc.php on a ça :
if(!getSettingAOui('ne_pas_tester_version_via_git_log')) { try { @exec('cd '.dirname(__FILE__).'; git log -1 --format=format:"%ct" '.$gepiGitCommit, $output); if (isset($output[0])) { $date = new DateTime('@'.$output[0]); $version_gepi .= ' '.$date->format('d/m/Y H:i'); } } catch (Exception $e) { } }
La valeur par défaut de l'option 'ne_pas_tester_version_via_git_log' est à 'n' (ou bien tout simplement le setting est absent.
En conséquence, à chaque déclenchement de la command 'exec' des logs d'erreur sont générés dans Apache (/var/log/apache2/error_log) si le code de Gepi n'est pas un dépôt git, ou bien si la commande 'git' n'est pas disponible sur le serveur.
Ce comportement par défaut est anormal :
- une application web, d'une manière générale, n'a pas vocation à utiliser des commandes systèmes
- si le mécanisme est potentiellement utile, des tests supplémentaires devraient être mis en place, pour d'une part limiter les appels, et surtout ne pas essayer d'exécuter la commande si celle-ci n'est pas disponible ou bien si le répertoire de Gepi ne correspond pas un dépôt git (test sur l'existence de .git).
No data to display