-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
186 lines (145 loc) · 6.24 KB
/
README
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
This directory contains the source for the C++ socket library
Version: 12Jan1997 1.11
Manifest:
--------
README.....................this file
configure config.h.in, Makefile.in, acconfig.h
configure.in...............configuring files
sockstream.h...............contains sockbuf, sockAddr, isockstream,
osockstream, iosockstream class
declarations
sockstream.C...............related to sockstream.h
pipestream.h...............contains ipipestream, opipestream, and
iopipestream class definitions. They are
used instead of pipe and socketpair system
calls and popen C library function call.
pipestream.C...............related to pipestream.h
sockinet.h.................contains sockinetbuf, sockinetaddr classes.
It also contains the definitions of
isockinet, osockinet, and iosockinet stream
classes.
sockinet.C.................related to sockinet.h
sockunix.h.................contains sockunix, sockunixaddr classes.
It also contains the definitions of
isockunix, osockunix, and iosockunix stream
classes.
sockunix.C.................related to sockunix.h
Fork.h.....................wrapper class for fork () system call.
sig.h......................wrapper class Unix signals.
protocol.h, protocol.C.....base class for application protocols.
echo.h, echo.C.............Echo application protocol class.
smtp.h, smtp.C.............SMTP application protocol class.
ftp.h, ftp.C...............FTP application protocol class.
socket++.texi..............texinfo file for libsocket++.a
./test
------
tdunread.cc, tdunwrite.cc..test files for datagram unix sockets
tdinread.cc, tdinwrite.cc..test files for datagram inet sockets
tsunread.cc, tsunwrite.cc..test files for stream unix sockets
tsinread.cc, tsinwrite.cc..test files for stream inet sockets
tpipe.cc...................test file for pipe system call
tsockpair.cc...............test file for sockpair system call
tpopen.cc, tpopentest.cc...test files for popen function
testall.cc.................runs all the above tests
testall.exp................correct output of testall
tnntp.cc, tsmtp.cc, twhois.cc
tsendfiles.cc, thostnames.cc...........Some more examples
Copyright Notice:
----------------
Copyright (C) 1992-1996 Gnanasekaran Swaminathan <[email protected]>
Permission is granted to use at your own risk and distribute this software
in source and binary forms provided the above copyright notice and this
paragraph are preserved on all copies. This software is provided "as is"
with no express or implied warranty.
Installation Note:
-----------------
This software has been tested in sun4 running SunOs4.1.3 machine only.
If you are having problems with any aspect of socket++, please
email me at [email protected]. We can fix it together.
This software works with proposed C++ standard iostream library. Thus
if you are using libg++, you need at least libg++-2.7.2.
Your C++ compiler should be able to handle C++ exceptions and templates.
Thus if you are using G++, you need at least gcc-2.7.2.
socket++.texi needs at least texinfo-2.16.
Gcc, libg++, and texinfo are all available for anonymous ftp from
prep.ai.mit.edu:/pub/gnu
cd socket++-1.11
env CCC=c++ ./configure --prefix="your favorite location"
make
cd test
make check
If you are using a compiler that is invoked by a command other than c++,
use that command instead on CCC=c++ in the above.
Testing:
-------
make check will automatically run testall.
You can also manually test as follows:
./testall > testall.out
diff -c testall.out testall.exp
If there are any differences, manually check whether
testall.out and testall.exp have the same lines but only their
order is different. If they have the same lines but
for the order, you have installed properly. Otherwise,
try to findout what might be the reason and if you couldn't
please email me with your problem at [email protected].
Bug reports:
-----------
Send them to me at [email protected]
News:
----
12Jan97 1.11
. This release brings back error handling through the use of
exceptions. I have not included any other enhancements in
this release.
. Document is out-of-date. I will work on it in the next release.
. class sig is added. It is useful for handling signals.
17Oct95 1.10
. Made to work cleanly in RS6000 machines
. Bug fixes sent in by Blair incorporated.
07Aug95 1.9
. Exceptions dropped as many compilers do not support
it yet. A number of small bug fixes.
. Made to work with libg++-2.7.0 and gcc-2.7.0
. Configuration simplified greatly by Blair.
15Jan95 1.8
. Error handling greatly enhanced through the use
of exceptions.
. FTP class added.
08Nov94 1.7
. First stable version. Known to work in sunos4, aix3.2,
hpux, ultrix, linux, and osf2.
Acknowledgements:
----------------
Gordon Joly <[email protected]> for reporting bugs in
pipestream class implementation. He also knows how to make
the socket++ library a shared library.
Jim Anderson for reporting a bug in sockinet.C
Carl Gay <[email protected]> for reporting a bug
and a fix in sockinet.C
Oliver Imbusch <[email protected]> for reporting a bug
in Makefile.in and suggesting several enhancements for sockbuf class.
Dierk Wendt <[email protected]> for reporting errors
in the socket++ documentation.
Christian Schlichtherle <[email protected]> for sending
patches for linux support.
Ed Martini <[email protected]> and taylor d fraley <[email protected]>
sent in some more linux fixes.
Dan R. Greening <[email protected]> for a fix in sockstream.h
Mike Christiansen for sending patches for hpux support and
memory leaks. He used purify to check for memory leaks.
Nanlin Xiao <[email protected]> for sending fixes
to compile under Objectcenter C++ compiler.
Solaris support is still weak, and thus the names
of people who helped to port to solaris is not listed
here yet.
V. Olshevsky <[email protected]> for catching sequence
point bugs in tdinwrite.C.
Blair Zajac <[email protected]> provided the autoconfig
files and Makefile.ins needed to generate the configure and Makefiles
and a number of bug fixes.
Enjoy!
-Sekar
Gnanasekaran Swaminathan ([email protected])
CSIS Lab. Dept. of Elec. Eng.
University of Virginia
Charlottesville VA 22903