C'est ça.
Mais là encore, il y a des exceptions: En FTP actif, le socket coté serveur est supposé être bindé au port 20 (ftp-data) avant se de connecter au client...
Version imprimable
C'est ça.
Mais là encore, il y a des exceptions: En FTP actif, le socket coté serveur est supposé être bindé au port 20 (ftp-data) avant se de connecter au client...
:cfou: L'application dois certainement avoir deux sockets. Un binder sur l'adresse locale (donc un serveur) et l'autre adresse sur la machine distante (un client), non ?
Apres une longue periode d'inactivite, j'ai finalement termine l'implementation de mes classes. J'ai donc une classe pour UDP (avec un bind() si c'est un serveur) et 2 classes pour TCP : TCP_SERVER et TCP_CLIENT.
TCP_CLIENT a les fonctions connect(), send(), recv().
TCP_SERVER a les fonctions listen(), bind() et accept().
Rmq : TCP_SERVER Server declare une instance Client de TCP_CLIENT.
Lors de l'appel de accepte(), il passe le descripteur retourne par accepte() aux constructeur TCP_CLIENT(int). De cette maniere les fonctions Server->envoi() et Server->recep() sont simplement des appels aux fonctions Server->Client->envoi() et Server->Client->recep().
Il reste quelques bugs mineurs en liens avec les pointeurs mais l'application fonctionne et le sujet est clos.
Merci pour tout.