rendered paste body#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <errno.h>
#define p 30002
main()
{
int sock;
u_short port;
char message[1024], NomServeur[20];
struct sockaddr_in adresse;
struct hostent *adresse_ip;
sock = socket(AF_INET,SOCK_STREAM,0);
if (sock <0)
{perror("Saloperie de Socket qui s'ouvre pas");
return(-1);}
fprintf(stderr, "\n Nom du serveur de jeu :\n");
scanf("%s",NomServeur);
fprintf(stderr,"NomServeur:%s",NomServeur);
adresse_ip = gethostbyname(NomServeur);
if (adresse_ip ==NULL)
{perror("Problème d'obtention d'adresse");
return(-1);}
memcpy( (char *)&adresse.sin_addr, (char*)adresse_ip->h_addr,adresse_ip->h_length);
adresse.sin_family = AF_INET;
adresse.sin_port = htons((u_short) p);
if (connect(sock, (struct sockaddr *)&adresse, sizeof(adresse))== -1)
{perror("Problème de connexion");
return(-1);}
fprintf(stderr, "Message à envoyer : \n");
scanf("%s",message);
if (write(sock,message,strlen(message)+1) == -1)
{ perror(" Erreur d'émission ou d'écriture dans la socket");
return(-1);}
fprintf(stderr," Le message est envoyé \n ");
fprintf(stderr," Message reçu? \n ");
memset(message,0,sizeof message);
if ((read(sock,message,1024) == -1))
{
perror("Erreur de lecture de la socket ");
return(-1);
}
else fprintf(stderr,"\n Le message reçu est : %s \n", message);
close(sock);
}