# 大字报 > Dàzì bào ![Photo d'un atelier de Dazi bao en RPC](header.jpg) Le but de ce projet est d’implémenter un dazibao (« journal à grandes lettres »), semblable à un « mur » de réseau social, mais de façon complètement distribuée. Le protocole est basé sur un algorithme non-fiable d’inondation. ## Installation _Ce logiciel est développé pour GNU/Linux, et n'a pas de support à l'heure actuelle pour macOS ou Windows._ - Téléchargez le code source, soit avec `git clone` depuis la branche master, ou en téléchargant une archive depuis la page web du projet. - Rendez vous dans le dossier, une fois décompressé si nécessaire. - Assurez vous d'avoir, - `make` >= 4.3 - `gcc` >= 9.3.0 - `libssl-dev` et `libssl`. - Lancez la commande `make` - Si aucune erreur n'a lieu, tuto bene. Sinon, ouvrez un rapport de bug sur la page web du projet. - Optionnel : vous pouvez installer Dazibao de façon permanente en copiant le fichier `dazibao` ainsi crée dans `/usr/bin`. ## Utilisation Si vous connaissez l'adresse d'un pair, vous pouvez éxecuter le programme avec la commande `./dazibao `, en remplaçant `` par l'URL où votre pair est disponible, et `` par le port où le pair écoute. Si vous voulez changer le niveau d'affichage, vous pouvez changer la valeur de la variable `DEBUG_LEVEL`, puis refaire la commande `make`. Lorsque le niveau est >1, vous êtes en mode débug, et en appuyant sur **P** puis **Entrée**, vous pouvez afficher la liste des pairs connus. En appuyant juste sur **Entrée** sans rien d'autre, vous pouvez afficher la liste des messages connus, classé par ID du pair. Vous pouvez aussi lancer votre pair avec la commande `./dazibao >> dazibao.log`. Ainsi, vous aurez l'affichage de Dazibao dans le fichier susnommé, que vous pouvez lire avec `tail -f`, dans une autre fenêtre de terminal. De fait, cela rend l'écriture de nouveaux messages beaucoup plus simple. ## Contribution Sentez vous libre de copier le code, le modifier et de nous renvoyer vos modifications tout en les décrivant avec le plus de détails possible. Vous pouvez ouvrir un _merge request_ depuis la page web du projet. ## Notes Ce programme est un projet réalisé lors du deuxième semestre 2020, durant le confinement dû au coronavirus, dans le cadre de la licence d'informatique de Paris-Diderot, dont les consignes sont données dans le fichier [énoncé.pdf](énoncé.pdf). ## Licence Dàzì bào - p2p gossip social network. Copyright (C) 2020 Felipe G.A. & Nelson P. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see .