Les fonctions à utiliser pour un processus client
(en mode connecté)
Vous allez voir, c'est la partie la plus simple ! et quand je dis les fonctions...cela devrait être la fonction !
Se connecter à une machine distante - préparation à l'émission
Pour pouvoir émettre des données d'un client vers un serveur, il est nécessaire que le client se connecte à ce serveur.
#include <sys/types.h>
#include <sys/socket.h>
int connect(int sockfd, struct sockaddr *serv_addr, socklen_t addrlen );
En entrée:
socket est l'identifiant retourné lors de l'ouverture du socket
serv_addr Spécifie l'adresse d'une structure qui sera utilisée par le programme pour communiquer.
(Voir la commande bind pour connaitre le contenu de la structure sockaddr)
addrlen indique la longueur de serv_addr (utilisez sizeof())
En sortie:
connect renvoie 0 s'il réussit, ou -1 s'il échoue, dans ce cas errno contient le code d'erreur.
Et la suite...
Eh bien en fait, c'est bien tout pour le client, il n'y a pas à faire de bind(), celui-ci est fait automatiquement grâce à la fonction connect(). De plus, il n'y a pas à priori de listen() à faire côté client vous n'allez pas mettre le client en écoute...
Donc encore moins d'utiliser la fonction accept().
Prochaine étape donc, faire dialoguer/communiquer le(s) client(s) et le serveur...