IMA4 2021/2022 EC5 : Différence entre versions
(→Travail réalisé 6) |
(→Travail réalisé 6) |
||
Ligne 49 : | Ligne 49 : | ||
[[Média:Messagerie_v7.zip]] | [[Média:Messagerie_v7.zip]] | ||
+ | |||
+ | Tests réalisés sur mon pc en local pour les 2 serveurs : MTAint et MTAext | ||
+ | |||
+ | [[Média:Test_MTAint_1.PNG]] | ||
+ | [[Média:Test_MTAint_2.PNG]] | ||
+ | [[Média:Test_MTAext_1.PNG]] | ||
+ | [[Média:Test_MTAext_2.PNG]] | ||
= Travail en cours 1 = | = Travail en cours 1 = |
Version actuelle datée du 6 septembre 2022 à 09:43
Sommaire
Objectif
Terminer le projet système réseau SE2a4 2021/2022 à partir de votre source.
Le sujet du projet est ici : https://rex.plil.fr/Enseignement/Systeme/Tutorat.IMA2a4.Messagerie/
Vous devez documenter vos avancées sur cette page Wiki. Au vu du retard que vous avez pris dans l'épreuve, merci de mettre à jour votre Wiki au moins deux fois par semaine.
Travail réalisé 1
Gestion SMTP avec les fonctions (HELO, MAIL, RCPT, DATA, QUIT). Threads permettant de gérer plusieurs connexions légères (par processus). Utilisé pour la fonction gestionSMTP. Fichier:Messagerie v1.zip
Travail réalisé 2
Ajout d'une fonction trouve_mx() dans lib_SMTP.c qui permet d'enregistrer le nom de domaine du destinataire dans le champ domaine de la structure client. Ajout d'une fonction GetMXRecord() dans libcom.c qui résout les noms de domaines de type MX.
Travail réalisé 3
La fonction "compare" utilisée dans qsort ne triait pas les MX selon leur priorité, c'est corrigé ! On trouve maintenant l'IP du serveur de destination grâce à la commande host <domain.name>. J'ai replacé les fonctions de gestion de MX dans lib_SMTP.c. J'ai ajouté la fonction connexionserveur() dans libcom.c.
Travail réalisé 4
Ajout des fonctions connexionServeur qui utilise nomVersAdresse(), connexion au serveur réussie.
Test préalable fait : m'envoyer un mail en me connectant sur le serveur mail de Polytech : "woody.escaut.net" en utilisant la commande netcast et le port 25. Cette commande fonctionne aussi bien depuis un pc de Polytech et un PC distant. Cela m'a aussi aidé à comprendre comment les informations sont envoyées au serveur et les messages de réponse qu'il renvoie. Je suis maintenant en train de faire une fonction qui envoie une commande au serveur et lit sa réponse.
Travail réalisé 5
L'envoi de mail fonctionne bien, le serveur MTAint fonctionne, cependant il faut maintenant restructurer le code car mes fonctions se trouvent dans le fichier gestiom_smtp. + faire serveur MTAext qui reçoit le message et le stocke sur le pc de l'utilisateur au format maildir.
Travail réalisé 6
Serveur MTAext codé, il extrait le nom du destinataire du mail de destination, crée une hiérarchie de dossier, et crée un génère un nom de fichier pour y stocker le data du mail. Ex: si on envoie un mail à jerome.breuvart@polytech-lille.net, le mail est stocké dans "jerome_breuvart/MAILDIR/tmp/wHJ0ZU".
Tests réalisés sur mon pc en local pour les 2 serveurs : MTAint et MTAext
Média:Test_MTAint_1.PNG Média:Test_MTAint_2.PNG Média:Test_MTAext_1.PNG Média:Test_MTAext_2.PNG
Travail en cours 1
Restructurer le code du serveur MTAint (sortir les fonctions du fichier gestion_SMTP.c, Coder le serveur MTAext qui reçoit le message d'internet et le stocke au format maildir.