SMTP en mode serveur

Bonjour à tous,

Juste pour comprendre le fonctionnement de la bibliothèque Ethernet2 j'ai voulu écrire un programme simulant un serveur SMTP sur Arduino. Celui-ci est basé sur l'exemple de WebServer en utilisant bien sûr le port 25 et aucune identification pour simplifier l'ensemble. Mais je suis (vraiment) pas allé bien loin...
cela bloque ici :
EthernetClient client = server.available();

if (client) {
...
}
En effet, si en utilisant un navigateur la fonction server.available renvoi bien une valeur différente de 0 quand un client se connecte, ce n'est pas le cas en utilisant un logiciel de messagerie. En sniffant les paquets on peut quand même vérifier que la connexion TCP/IP a été établie.
Quelqu'un s'aurait m'expliquer pourquoi ?

Merci de votre aide

Dans la lib Ethernet première version, Server.available () ne renvoie une valeur différente de zéro que si un client se connecte ET envoie des données. J'imagine que c'est le cas aussi pour la lib Ethernet2.

Il faudrait modifier la lib Ethernet pour gérer ça différemment...

oui c'est dans la doc...

Returns

a Client object; if no Client has data available for reading, this object will evaluate to false in an if-statement (see the example below)