Investigation

Description du projet

Investigation est un logiciel libre sous license GPLv3.

Ecriture du site d'investigation

Le site est écrit dans un fichier unique lu au démarrage du logiciel avec une syntaxe assez légère, mais permettant de découper les données en petits blocs appellés pages avec des relations entre eux symbolisées par des liens hyper texte.

Les relations peuvent être conditionnelles, chaque condition portant sur la succession des pages visitées pendant une investigation, allant de la simple présence d'une étape particulière à l'expression rationnelle portant sur l'ensemble des étapes.

Et la FAQ prend vie…

Une fois le fichier d'entrée lu, le logiciel passe en mode serveur HTTP et reçoit les requetes d'investigation. Les réponses sont formatées en HTML sous forme d'une suite de pages formées de réponses donnant l'état de l'investigation et de questions permettant de poursuivre l'investigation.

Au bas de chaque réponse, un historique de toutes les étapes est présenté. Enfin, les liens générés par le serveur ont la même durée de vie que le serveur lui-même. Une fois relancé, les liens deviennent invalides pour éviter les fausses pistes en cas de partage de liens.

Qualité du site

Un mode particulier permet de faire une investigation basique du site par le serveur qui affiche des statistiques et lève des alertes pour permettre l'amélioration du site. Ces alertes concernent les pages elles-mêmes, les identifiants des pages et les conditions.

Un exemple

Un exemple de fichier d'investigation est fourni dans l'archive. Il s'agit d'un petit détournement de l'outil pour proposer un petit jeu (en anglais).

Pour jouer avec ?

Pour télécharger l'archive et la compiler, il vous faudra les outils standards de compilation. Sous gentoo, ces outils sont installés de base dans le système. Sur une debian-like, il faudra build-essential, flex et bison pour pouvoir compiler la machine virtuelle.

Les dernières versions utilisables sont :

Que des fonctionnalités…

En soit, le code existant n'a pas de bugs connus mais est un peu intégré à l'arrache, et peut donc planter à l'installation.

La partie sur la gestion des requetes HTTP est écrite au lance-pierres, et a de belles perspectives d'amélioration.

Pour contribuer ?

Bah, des didacticiels ou des patchs corrigeant d'éventuels bugs, ou des améliorations seront les bienvenus.

Me contacter…

Pour une question sur le projet, une amélioration possible, un rapport de bug, envoyez-moi un email à l'adresse projet.investigation [chez] pappy.tf en précisant dans le sujet s'il s'agit d'un rapport de bug, d'une question ou d'une suggestion, merci !

Licence Creative Commons
Cette page de Julien Bruguier est mise à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé.