| 1234567891011121314151617181920212223 |
- #include "unp.h"## 1 ##src/tcpcliserv/str_echo08.c##
- void## 2 ##src/tcpcliserv/str_echo08.c##
- str_echo(int sockfd)## 3 ##src/tcpcliserv/str_echo08.c##
- {## 4 ##src/tcpcliserv/str_echo08.c##
- long arg1, arg2;## 5 ##src/tcpcliserv/str_echo08.c##
- ssize_t n;## 6 ##src/tcpcliserv/str_echo08.c##
- char line[MAXLINE];## 7 ##src/tcpcliserv/str_echo08.c##
- for (;;) {## 8 ##src/tcpcliserv/str_echo08.c##
- if ((n = Readline(sockfd, line, MAXLINE)) == 0)## 9 ##src/tcpcliserv/str_echo08.c##
- return; /* connection closed by other end */## 10 ##src/tcpcliserv/str_echo08.c##
- if (sscanf(line, "%ld%ld", &arg1, &arg2) == 2)## 11 ##src/tcpcliserv/str_echo08.c##
- snprintf(line, sizeof(line), "%ld\n", arg1 + arg2);## 12 ##src/tcpcliserv/str_echo08.c##
- else## 13 ##src/tcpcliserv/str_echo08.c##
- snprintf(line, sizeof(line), "input error\n");## 14 ##src/tcpcliserv/str_echo08.c##
- n = strlen(line);## 15 ##src/tcpcliserv/str_echo08.c##
- Writen(sockfd, line, n);## 16 ##src/tcpcliserv/str_echo08.c##
- }## 17 ##src/tcpcliserv/str_echo08.c##
- }## 18 ##src/tcpcliserv/str_echo08.c##
|