blob: 9f154faf6deb64562daf4af411b2fdf9ebcc853b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
This directory contains groups of client and server test programs that
exercise the various C++ wrappers for sockets. In general, the test
programs do more or less the same thing -- the client establishes a
connection with the server and then transfers data to the server,
which keeps printing the data until EOF is reached (e.g., user types
^D).
Unless noted differently, the server is implemented as an "iterative
server," i.e., it only deals with one client at a time. The following
describes each set of tests in more detail:
. C-inclient.cpp/C-inserver.cpp -- This is basically a C code
implementation that opens a connection to the server and
sends all the data from the stdin using Internet domain
sockets (i.e., TCP).
. CPP-inclient.cpp/CPP-server.cpp -- This test is basically
a C++ wrapper version of the preceeding "C" test using
Internet domain sockets (i.e., TCP).
. CPP-unclient.cpp/CPP-unserver.cpp -- This test is basically
a C++ wrapper version of the preceeding "C++" test using
UNIX domain sockets.
. FD-unclient.cpp/FD-inclient.cpp -- This test illustrates
how to pass file descriptors between two processes on the
same machine using the ACE C++ wrappers for UNIX domain
sockets.
. CPP-inserver-poll.cpp -- This test illustrates how to
write single-threaded concurrent servers using UNIX SVR4
poll(). You can run this test using the CPP-inclient.cpp
program as the client.
For examples of the ACE SOCK_{Dgram,CODgram} and
SOCK_Dgram_{Mcast,Bcast} wrappers, please take a look in the
./examples/Reactor/{Dgram,Multicast,Ntalker} directories.
|