Previous Contents Next

3.4.4   Exemple de client

int main(int argc,char *argv[])
{
int s;    /* Descripteur de SOCKET */
struct sockaddr_in adresse; /* Adresse de la SOCKET du serveur */
int statut;   /* Stocke le statut des commandes */

/* Analyse des arguments */
analyseArguments(argc,argv);

/* Creation de la SOCKET du client */
s=socket(AF_INET,SOCK_DGRAM,0);
if(s<0){perror("socket"); exit(-1);}

/* Preparation de la structure adresse du serveur */
nomVersAdresse(machine,&adresse.sin_addr);
adresse.sin_family=AF_INET;
adresse.sin_port=htons(port);

/* Dialogue avec le serveur */
{ char tampon[MAX_TAMPON];
  int taille;

  fgets(tampon,MAX_TAMPON,stdin);
  sendto(s,tampon,strlen(tampon),0,(struct sockaddr *)&adresse,sizeof adresse);
  taille=recvfrom(s,tampon,MAX_TAMPON,0,NULL,NULL);
  fputs(tampon,stdout);
  }

/* Fermeture de la SOCKET de dialogue */
close(s);
exit(0);
}

Previous Contents Next