IMA2a4 2019/2020 EC1 : Différence entre versions
De Wiki d'activités IMA
(→Présentation du projet) |
|||
Ligne 17 : | Ligne 17 : | ||
* Pas de gestion de l'identification. Le serveur n'écoute que sur l'interface loopback. Donc seul un utilisateur ayant accès à la machine pourra utiliser le serveur IMAP. Pour un accès à distance, un tunnel créé par l'option <code>-L</code> de l'utilitaire <code>ssh</code> sera utilisé. Dans la phase d'identification du client IMAP seul le nom d'utilisateur sera exploité pour retrouver les messages. Le mot de passe sera lu sans effectuer de contrôle. | * Pas de gestion de l'identification. Le serveur n'écoute que sur l'interface loopback. Donc seul un utilisateur ayant accès à la machine pourra utiliser le serveur IMAP. Pour un accès à distance, un tunnel créé par l'option <code>-L</code> de l'utilitaire <code>ssh</code> sera utilisé. Dans la phase d'identification du client IMAP seul le nom d'utilisateur sera exploité pour retrouver les messages. Le mot de passe sera lu sans effectuer de contrôle. | ||
* Vous utiliserez le même format de stockage des messages que celui décrit dans l'épreuve complémentaire dont le sujet est le développement d'un serveur SMTP. Lors de la manipulation d'un message (ou de son status) en lecture ou en écriture vous bloquerez ce fichier avec la fonction système <code>lockf</code>. | * Vous utiliserez le même format de stockage des messages que celui décrit dans l'épreuve complémentaire dont le sujet est le développement d'un serveur SMTP. Lors de la manipulation d'un message (ou de son status) en lecture ou en écriture vous bloquerez ce fichier avec la fonction système <code>lockf</code>. | ||
− | * Vous implanterez un serveur IMAP version 2 tel que défini par la [[https://tools.ietf.org/html/rfc1176 RFC 1176]]. | + | * Vous implanterez un serveur IMAP version 2 tel que défini par la [[https://tools.ietf.org/html/rfc1176 RFC 1176]]. Vous implanterez en particulier les commandes <code>NOP</code>, <code>LOGIN</code>, <code>LOGOUT</code>, <code>SELECT</code>, <code>CHECK</code>, <code>EXPUNGE</code>, <code>COPY</code, <code>FETCH</code> et <code>STORE</code>. |
Version du 11 juillet 2019 à 11:49
Sommaire
Présentation du projet
Contexte
La validation du semestre S8 dépend de la validation de cette épreuve complémentaire.
Objectif
Le but est de développer un système de messagerie personnelle très léger. Vous développerez plus particulièrement un serveur IMAP.
Description du projet
Vous développerez ce serveur IMAP sur le même modèle que le projet système réseau, en particulier concernant l'aspect structuré et multi-threadé.
Quelques directives spécifiques au serveur IMAP :
- Pas de gestion de l'identification. Le serveur n'écoute que sur l'interface loopback. Donc seul un utilisateur ayant accès à la machine pourra utiliser le serveur IMAP. Pour un accès à distance, un tunnel créé par l'option
-L
de l'utilitairessh
sera utilisé. Dans la phase d'identification du client IMAP seul le nom d'utilisateur sera exploité pour retrouver les messages. Le mot de passe sera lu sans effectuer de contrôle. - Vous utiliserez le même format de stockage des messages que celui décrit dans l'épreuve complémentaire dont le sujet est le développement d'un serveur SMTP. Lors de la manipulation d'un message (ou de son status) en lecture ou en écriture vous bloquerez ce fichier avec la fonction système
lockf
. - Vous implanterez un serveur IMAP version 2 tel que défini par la [RFC 1176]. Vous implanterez en particulier les commandes
NOP
,LOGIN
,LOGOUT
,SELECT
,CHECK
,EXPUNGE
,COPY</code, <code>FETCH
etSTORE
.
Validation de l'épreuve
Matériel nécessaire
Aucun.