IMA4 2021/2022 EC5

De Wiki d'activités IMA
Révision datée du 1 septembre 2022 à 22:15 par Jbreuvar (discussion | contributions) (Travail réalisé 4)

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.

Fichier:Messagerie v2.zip

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.

Fichier:Messagerie v3.zip


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.

Fichier:Messagerie v5.zip

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".

Fichier:Messagerie v4.zip

Documents Rendus