mirror of https://framagit.org/bortzmeyer/echoping
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40d676b534 | 25 years ago | |
---|---|---|
.. | ||
Makefile | 25 years ago | |
README | 25 years ago | |
cliserv.h | 25 years ago | |
error.c | 25 years ago | |
readstream.c | 25 years ago | |
sleepus.c | 25 years ago | |
tcpcli.c | 25 years ago | |
tcpclitime.c | 25 years ago | |
tcpserv.c | 25 years ago | |
tcpservtime.c | 25 years ago | |
timer.c | 25 years ago | |
ttcpcli.c | 25 years ago | |
ttcpclibig.c | 25 years ago | |
ttcpclitime.c | 25 years ago | |
ttcphttpcli.c | 25 years ago | |
ttcpserv.c | 25 years ago | |
ttcpservbig.c | 25 years ago | |
ttcpservtime.c | 25 years ago | |
udpcli.c | 25 years ago | |
udpclitime.c | 25 years ago | |
udpserv.c | 25 years ago | |
udpservtime.c | 25 years ago |
README
The files in this archive are the example programs from Chapter 1 of "TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and the UNIX Domain Protocols" by W. Richard Stevens (Addison-Wesley, 1996). All the source code files assume tabs stop every 4 columns, not 8. With vi I use ":set tabstop=4". The files with "time" in their name are versions that can be used to time the client-server transactions (used for Figure 1.14 of the text). The three server programs with "time" in their name also allow a command-line option specifying how long they should sleep, to simulate the server processing time. Also notice that these "time" clients have a doubly nested loop: one for the request-reply size and another for the number of iterations. The two T/TCP files with "big" in their name define the request and reply size to exceed one MSS (used for the example in Section 3.6 of the text). *Before* trying to make these programs, do something like cc -c error.c sleepus.c ar -crv libmisc.a error.o sleepus.o ranlib libmisc.a # needed for a BSD-derived system Then change the definitions of CC, CFLAGS, and LIBS in the Makefile, as appropriate for your system. Then you can "make all".