X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=listati%2FUDP_echo.c;fp=listati%2FUDP_echo.c;h=943ec75499fcc004f48ccdbaec2fac7d4f62c81c;hp=0000000000000000000000000000000000000000;hb=a0184b68ca9dced41be95342ffd8a8ee04d2b861;hpb=9eb4436b75582594619576d54f28073ba027111a diff --git a/listati/UDP_echo.c b/listati/UDP_echo.c new file mode 100644 index 0000000..943ec75 --- /dev/null +++ b/listati/UDP_echo.c @@ -0,0 +1,31 @@ +void ClientEcho(FILE * filein, int socket, struct sockaddr_in *serv_add); +void SigTERM_hand(int sig); + +/* Program begin */ +int main(int argc, char *argv[]) +{ +/* + * Variables definition + */ + int sock, i; + struct sockaddr_in serv_add; + ... + /* create socket */ + if ( (sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { + perror("Socket creation error"); + return 1; + } + /* initialize address */ + memset((void *) &serv_add, 0, sizeof(serv_add)); /* clear server address */ + serv_add.sin_family = AF_INET; /* address type is INET */ + serv_add.sin_port = htons(7); /* echo port is 7 */ + /* build address using inet_pton */ + if ( (inet_pton(AF_INET, argv[optind], &serv_add.sin_addr)) <= 0) { + perror("Address creation error"); + return 1; + } + /* do read/write operations */ + ClientEcho(stdin, sock, &serv_add); + /* normal exit */ + return 0; +}