tsock_Abderrahman_Nathan/TCP source

46 lines
No EOL
1.3 KiB
Text

else { //connexion TCP
//---------SOURCE---------//
if (source == 1) {
printf("hello, on est dans la source\n");
//creation du socket local
if((sock=socket(AF_INET, SOCK_STREAM,0)) == -1) {
printf("echec de la creation du socket\n");
exit(1);
}
//construction de l'adresse du socket distant
//affectation domaine et num port
memset((char *)&adr_distant, 0, sizeof(adr_distant));
adr_distant.sin_family=AF_INET;
adr_distant.sin_port=port;
//affectation @IP
if((hp=gethostbyname(argv[argc-2])) == NULL){
printf("erreur gethostbyname\n");
exit(1);
}
memcpy((char*)&(adr_distant.sin_addr.s_addr), hp->h_addr, hp->h_length);
//connexion
if (connect(sock,(struct sockaddr*)&adr_distant, lg_adr_dest) == -1) {
printf("echec de la connexion\n");
exit(1);
}
//send
nb_message = 10; //10 messages par defaut
printf("nb de tampons a envoyer : %d\n", nb_message);
for(i=0;i<nb_message;i++) {
construire_message(pmesg, (char)((i%26)+97), lg_mesg);
afficher_message(pmesg, lg_mesg);
send(sock, pmesg, lg_mesg, 0);
}
if (close(sock)==-1) {
printf("echec de destruction du socket\n");
}
}