| 1234567891011121314151617181920212223242526272829303132 |
- #include "unp.h"## 1 ##src/udpcliserv/dgecholoop2.c##
- static void recvfrom_int(int);## 2 ##src/udpcliserv/dgecholoop2.c##
- static int count;## 3 ##src/udpcliserv/dgecholoop2.c##
- void## 4 ##src/udpcliserv/dgecholoop2.c##
- dg_echo(int sockfd, SA *pcliaddr, socklen_t clilen)## 5 ##src/udpcliserv/dgecholoop2.c##
- {## 6 ##src/udpcliserv/dgecholoop2.c##
- int n;## 7 ##src/udpcliserv/dgecholoop2.c##
- socklen_t len;## 8 ##src/udpcliserv/dgecholoop2.c##
- char mesg[MAXLINE];## 9 ##src/udpcliserv/dgecholoop2.c##
- Signal(SIGINT, recvfrom_int);## 10 ##src/udpcliserv/dgecholoop2.c##
- n = 240 * 1024;## 11 ##src/udpcliserv/dgecholoop2.c##
- Setsockopt(sockfd, SOL_SOCKET, SO_RCVBUF, &n, sizeof(n));## 12 ##src/udpcliserv/dgecholoop2.c##
- for (;;) {## 13 ##src/udpcliserv/dgecholoop2.c##
- len = clilen;## 14 ##src/udpcliserv/dgecholoop2.c##
- Recvfrom(sockfd, mesg, MAXLINE, 0, pcliaddr, &len);## 15 ##src/udpcliserv/dgecholoop2.c##
- count++;## 16 ##src/udpcliserv/dgecholoop2.c##
- }## 17 ##src/udpcliserv/dgecholoop2.c##
- }## 18 ##src/udpcliserv/dgecholoop2.c##
- static void## 19 ##src/udpcliserv/dgecholoop2.c##
- recvfrom_int(int signo)## 20 ##src/udpcliserv/dgecholoop2.c##
- {## 21 ##src/udpcliserv/dgecholoop2.c##
- printf("\nreceived %d datagrams\n", count);## 22 ##src/udpcliserv/dgecholoop2.c##
- exit(0);## 23 ##src/udpcliserv/dgecholoop2.c##
- }## 24 ##src/udpcliserv/dgecholoop2.c##
|