1.0.11.22: hash-table synchronization support
[sbcl.git] / contrib / sb-bsd-sockets / FAQ
1 Frequently Asked Questions
2
3 Q1) Is this the same thing as db-sockets
4
5 A1) Basically, yes.  It's hoped that bundling it as a contrib may make
6 it easier for people to install.
7
8 Q2) What are these test things?  How do I run the tests?
9
10 A2) Some of the tests get run automatically when the package is built
11 - if the tests fail, the package is not installed.  The rest of the
12 tests depend on having Internet access which may not always be the
13 case on a build machine, but you can run them by hand from the Lisp
14 listener, if you want to:
15
16 * (rt:do-tests)
17
18 This uses the regression tester from the CMU AI repository to run the
19 tests defined in tests.lisp.  You should not get any test failures,
20 unless -
21
22 a) your "echo" services are disabled in inetd.conf -
23 SIMPLE-TCP-CLIENT and SIMPLE-UDP-CLIENT both attempt to connect to the
24 echo port.
25
26 b) you're not on the internet - SIMPLE-HTTP-CLIENT attempts to connect to
27 ww.telent.net, and other tests do DNS lookups for well-known hosts
28
29 c) a.root-servers.net has moved IP address
30
31 Q3) What's constants.lisp-temp?
32
33 A3) Many of the structure offsets and symbolic constants vary between
34 architectures and operating systems.  To avoid a maintenance
35 nightmare, we derive them automatically by creating and running a
36 small C program.  The C program is created by def-to-lisp.lisp
37 with input from constants.lisp
38
39 Some of the exciting stuff in bsd-sockets.asd writes a C program in
40 /tmp, compiles it, and runs it.  The output from this program becomes
41 constants.lisp-temp
42
43 Q4) Is this compatible with ACL?  With CMUCL's internet.lisp?
44
45 A4) No.  This is a sufficiently low-level interface that either could
46 be built on top of it, though.  Actually, the ACL-COMPAT library that
47 comes with Portable Allegroserve may already have this.