IMA4 2021/2022 EC5 : Différence entre versions
(→Travail réalisé 4) |
(→Travail réalisé 4) |
||
Ligne 35 : | Ligne 35 : | ||
[[Fichier:Messagerie_v5.zip]] | [[Fichier:Messagerie_v5.zip]] | ||
− | |||
= Travail réalisé 5 = | = Travail réalisé 5 = |
Version du 5 septembre 2022 à 10:40
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 en cours 3
Etablir la connexion TCP avec le serveur de destination et lui envoyer le mail.
Pour l'instant je crée le socket et je connecte le socket au serveur en utilisant la fonction connexionServeur() dans libcom.c. (J'utilise le port 25). Essais faits en essayant d'atteindre le serveur Gmail. Mais retour de la fonction "erreur de connexion au serveur".