III. Spécifications▲
III-A. Mode d'administration▲
Le serveur se lance en 'daemon', sans interface. L'administrateur se connecte avec un client, et le serveur lui donne les droits d'administration lors de l'authentification.
III-B. Serveur.conf▲
Ce fichier codé entièrement en UTF-8 contient les paramètres de configuration du serveur. Son format est très simple :
- PROPRIETE1=VALEUR<CRLF>
- PROPRIETE2=« TEXTE »<CRLF>
- PROPRIETE3="TEXTE \\
- SUITE TEXTE %d %ip %nc %nu"
- …
- PROPRIETEN=VALEUR<CRLF>
Si le premier caractère non blanc (c'est-à-dire différent de SP, HT …) est #, la suite de la ligne est un commentaire, ignorée lors de la lecture du fichier. Seul le MOTD peut être sur plusieurs lignes à condition qu'une ligne se termine par \\. Le MOTD peut aussi être formaté par les formats suivants :
- %d : date du jour ;
- %ip : adresse IP du serveur ;
- %nu : nombre de clients connectés ;
- %nc : nombre de canaux créés.
Ainsi que la liste des propriétés :
- PORT_ECOUTE ;
- CONNEXION_MAX ;
- CANAUX_MAX ;
- MOTD ;
- MSG_CONNEXION_MAX ;
- MSG_UTL_BANNI ;
- SERVEUR_BDD ;
- PORT_SERVEUR_BDD ;
- NOM_BDD ;
- USER_BDD ;
- MDP_BDD.
III-C. Base de données▲
La base de données est composée d'une table « utilisateurs » et de six champs :
- (VARCHAR)identifiant : login du client ;
- (VARCHAR MD5)mdp : mot de passe du client ;
- (ENUM)droits : si le client est administrateur ou non ;
- (VARCHAR)mail : l'adresse mail du client ;
- (DATE)inscription : date de l'inscription du client ;
- (ENUM)active : si le client est banni ou non.
III-D. Fichiers de logs▲
Le serveur produira trois fichiers de logs :
- un pour les connexions / déconnexions ;
- un pour les canaux ;
- un pour le serveur lui-même (lancement, arrêt, problèmes internes…).