Nous Remarque qua y a deuxe facons de sounder exerciser
Le premier cas ;
si nous considerons le programme de servure mode noconnect UDP
ajouter la bibliothéque #include apri ligne (07 )
ligne (09 ) int main(int argc, char **argv)
ligne (10) char c ;c caractuer preis difini langaja c :chr* ("127.0.0.1");
ligne (12) if(argc != 2){ int port = atoi(argv[1]);
ligne (13) socket = socket(s=AF_INET, SOCK_DGRAM, 0);
ligne (14) if (ss == -1) {
perror("Erreur lors de la création du socket");
exit(EXIT_FAILURE) ;
}
ligne (15) serv_addr.sin_family = AF_INET;
ligne (16) serv_addr.sin_addr.s_addr = inet_addr("127.0.0.1"); if (ss == -1) {
perror("Erreur lors de la création du socket");
exit(EXIT_FAILURE);
}
ligne (17) serv_addr.sin_port = htons(atoi(argv[1]));
ligne (17_1) supprimer function accept (udp
correction : exit(1);
ajouter : memset(&serv_addr r, '\0', sizeof(serv_addr));
ligne (18) (bind(s, (struct sockaddr*)&serv_addr, sizeof(serv_addr
ligne (19 ) data n'est pas declaré
recvfrom (ss, &nbr, sizeof(nbr) 0, (struct sockaddr*)& ip, &addr_size);
ligne (20)
ligne (21) sendto (ss, &nbr, sizeof(nbr) 0, (struct sockaddr*)& ip, &addr_size);
ligne (22) ajouter close(ss);
Le deuxieme cas
;si nous considerons le programme de servure mode connecté(TCP) ;.
ajouter la bibliothéque #include apri ligne (07 )
ligne (09 ) int main(int argc, char **argv)
ligne (10) char c ;c caractuer preis difini langaja c :chr* ("127.0.0.1");
newsocke ; newaddr
ligne (12) if(argc != 2){ int port = atoi(argv[1]);
ligne (13) socket = socket(s=AF_INET, SOCK_STREAM , 0);
ligne (14) if (ss == -1) {
perror("Erreur lors de la création du socket");
exit(EXIT_FAILURE);
}
ligne (15) serv_addr.sin_family = AF_INET;
ligne (16) serv_addr.sin_addr.s_addr = inet_addr("127.0.0.1");
ligne (17) serv_addr.sin_port = htons(atoi(argv[1]));
ligne (17_1) order la function accept aprie bind ; lisen
ajouter : memset(&serv_addr r, '\0', sizeof(serv_addr));
ligne (18) if (bind(s, (struct sockaddr*)&serv_addr, sizeof(serv_addr
ajouter la function listen
if listen (s,4 );
ajouter la function accept aprie listen
addrsize = sizeof(newaddr);
newssocket = accept(serverSocket, (struct sockaddr*r, &addrsize);
if (newsocket == -1) {)&newadd
perror("Erreur lors de l'acceptation de la connexion");
exit(EXIT_FAILURE);
}
ligne (19 ) data n'est pas declaré
read(newsocke, &nbr, sizeof(nbr) 0, (struct sockaddr*)& ip, &addr_size);
ligne (20 )
ligne (21)write(newsocket, nbr, sizeof(nbr), 0);
ligne (21) send(newSocket, buffer, strlen(buffer), 0);
ligne (22) ajouter close(newsocket);