bef232ae |
1 | INSTALLATION INSTRUCTIONS for GNU ADNS |
95ecb688 |
2 | |
2b61beb8 |
3 | 1. Read the security note below. |
4 | |
5 | 2. Standard GNU package build process: |
bef232ae |
6 | $ ./configure [--disable-dynamic] [--prefix=... ...] |
95ecb688 |
7 | $ make |
8 | # make install |
9 | |
bef232ae |
10 | Unfortunately, there is no comprehensive documentation yet. For now, |
11 | use the comments in the public header file adns.h, and for the C |
12 | programs their usage messages. If you find this information |
13 | ambiguous, incomplete or wrong, please report it as a bug. |
95ecb688 |
14 | |
15 | |
bef232ae |
16 | TESTED PLATFORMS |
95ecb688 |
17 | |
e32d0f9e |
18 | The following platforms have been tested at at least some point and |
19 | should work - please report if they don't: |
20 | [adns] OS |
bef232ae |
21 | 1.0 Linux glibc 2.1 (actually tested on Debian 2.2) |
22 | 1.0 Solaris 2.6, 2.7, 2.8 [3] |
57700a3b |
23 | 1.0 FreeBSD 3.2, 4.0 (no poll(2), so no adnsresfilter) |
bef232ae |
24 | The following work, but only with --disable-dynamic: |
57700a3b |
25 | 1.0 IRIX 6.5 *not* with GCC [1], [2] |
26 | 1.0 AIX 4.1.5 |
8e26a971 |
27 | 1.0 HP-UX 10.20, 11.00 |
e32d0f9e |
28 | Later versions of the same OS should work too. [adns] is the latest |
29 | version of adns that has been tested. Usually entries in this table |
57700a3b |
30 | mean they pass adns's own regression test, when compiled with GCC, |
bef232ae |
31 | and appear to install and run correctly. |
32 | |
33 | Notes/known problems: |
34 | [1] IRIX 6.5 inet_ntoa seems to break with GCC. |
35 | [2] The SGI IRIX compiler produces many spurious warnings. |
36 | [3] Dynamically linked, needs some help to find libadns.so.0.1. |
e32d0f9e |
37 | |
38 | The following platforms are known to be deficient and will not work: |
bef232ae |
39 | Solaris 2.5 Lacks vsnprintf - install glibc ? |
40 | TruUnix64 (DEC UNIX 4.0f) Lacks vsnprintf - install glibc ? |
e32d0f9e |
41 | Please don't report these problems unless you have a nice, |
bef232ae |
42 | straightforward solution or workaround for them. (I don't consider |
43 | including a `vsnprintf' implementation nice, so don't send me one.) |
44 | |
45 | |
46 | PORTABILITY INFORMATION |
47 | |
48 | You will find that adns requires a reasonably standard and up to date |
49 | system. Non-GNU, non-UNIX systems are not supported. |
e32d0f9e |
50 | |
bef232ae |
51 | The build system assumes by default that you have ELF shared |
52 | libraries, and that the directory in which libadns.so.1 will be |
53 | installed is on your dynamic library search path. If your system |
54 | doesn't have ELF shared libraries then dynamic linking is not |
55 | supported by adns. Use the --disable-shared configure option. |
56 | Please don't send me patches to use libtool (which I dislike). |
95ecb688 |
57 | |
9a09fa18 |
58 | The adnsresfilter utility uses `tsearch' from the C library (a la SVID |
bef232ae |
59 | and X/Open). If you don't have tsearch configure will arranges for |
60 | adnsresfilter not to be built. To fix this, install a C library |
61 | containing tsearch, such as the GNU C library. It is best if tsearch |
62 | uses an automatically-balancing tree algorithm, like the glibc version |
63 | does. Simple binary trees may perform badly. |
9a09fa18 |
64 | |
e39ec089 |
65 | You will probably find that GNU Make is required. |
bef232ae |
66 | Please do not report this as a bug; install GNU Make instead. |
95ecb688 |
67 | |
68 | |
2b61beb8 |
69 | SECURITY AND PERFORMANCE - AN IMPORTANT NOTE |
70 | |
71 | adns is not a full-service resolver. It does no caching of responses |
72 | at all, and has no defence against bad nameservers or fake packets |
73 | which appear to come from your real nameservers. It relies on the |
74 | full-service resolvers listed in resolv.conf to handle these tasks. |
75 | |
76 | For secure and reasonable operation you MUST run a full-service |
77 | nameserver on the same system as your adns applications, or on the |
78 | same local, fully trusted network. You MUST only list such |
79 | nameservers in the adns configuration (eg resolv.conf). |
80 | |
81 | You MUST use a firewall or other means to block packets which appear |
82 | to come from these nameservers, but which were actually sent by other, |
83 | untrusted, entities. |
84 | |
85 | Furthermore, adns is not DNSSEC-aware in this version; it doesn't |
86 | understand even how to ask a DNSSEC-aware nameserver to perform the |
87 | DNSSEC cryptographic signature checking. |
88 | |
89 | |
95ecb688 |
90 | COPYRIGHT |
91 | |
92 | This file, INSTALL, contains installation instructions and other |
3d5cde09 |
93 | details for adns. It is |
94 | Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk> |
95ecb688 |
95 | |
d942707d |
96 | adns is |
d0bed398 |
97 | Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk> |
bef232ae |
98 | Copyright (C) 1999-2000 Tony Finch <dot@dotat.at> [1] |
d0bed398 |
99 | Copyright (C) 1991 Massachusetts Institute of Technology [2] |
95ecb688 |
100 | |
101 | adns is free software; you can redistribute it and/or modify it under |
102 | the terms of the GNU General Public License as published by the Free |
103 | Software Foundation; either version 2 of the License, or (at your |
104 | option) any later version. |
105 | |
106 | This program is distributed in the hope that it will be useful, but |
107 | WITHOUT ANY WARRANTY; without even the implied warranty of |
108 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
109 | General Public License for more details. |
110 | |
111 | You should have received a copy of the GNU General Public License |
4423286d |
112 | along with adns as the file COPYING; if not, email me at the address |
95ecb688 |
113 | above or write to the Free Software Foundation, 59 Temple Place - |
114 | Suite 330, Boston, MA 02111-1307, USA. |
9a09fa18 |
115 | |
bef232ae |
116 | [1] Tony Finch holds the original copyright on client/adnslogres.c and |
117 | client/fanftest.c, and some modifications to those files. |
d0bed398 |
118 | [2] MIT hold the original copyright on the included install-sh, |
119 | which came via GNU autoconf. |
120 | |
9a09fa18 |
121 | # Local variables: |
122 | # mode: text |
123 | # End: |