Versione finale del client ECHO su TCP, con esempio di uso della funzione
[gapil.git] / listati / TCP_echo_first.c
1 int main(int argc, char *argv[])
2 {
3 /* 
4  * Variables definition  
5  */
6     int sock_fd, i;
7     struct sockaddr_in serv_add;
8     ...
9     /* create socket */
10     if ( (sock_fd = socket(AF_INET, SOCK_STREAM, 0)) < 0) {
11         perror("Socket creation error");
12         return 1;
13     }
14     /* initialize address */
15     memset((void *) &serv_add, 0, sizeof(serv_add)); /* clear server address */
16     serv_add.sin_family = AF_INET;                   /* address type is INET */
17     serv_add.sin_port = htons(7);                    /* echo port is 7 */
18     /* build address using inet_pton */
19     if ( (inet_pton(AF_INET, argv[optind], &serv_add.sin_addr)) <= 0) {
20         perror("Address creation error");
21         return 1;
22     }
23     /* extablish connection */
24     if (connect(sock_fd, (struct sockaddr *)&serv_add, sizeof(serv_add)) < 0) {
25         perror("Connection error");
26         return 1;
27     }
28     /* read daytime from server */
29     ClientEcho(stdin, sock_fd);
30     /* normal exit */
31     return 0;
32 }