~ubuntu-branches/ubuntu/hardy/openswan/hardy-updates

« back to all changes in this revision

Viewing changes to programs/lwdnsq/lwdnsq.8.xml

  • Committer: Bazaar Package Importer
  • Author(s): Rene Mayrhofer
  • Date: 2005-01-27 16:10:11 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20050127161011-idgybmyz3vwhpfiq
Tags: 2.3.0-2
Urgency HIGH due to security issue and problems with build-deps in sarge.
* Fix the security issue. Please see
  http://www.idefense.com/application/poi/display?id=190&
      type=vulnerabilities&flashstatus=false
  for more details. Thanks to Martin Schulze for informing me about
  this issue.
  Closes: #292458: Openswan XAUTH/PAM Buffer Overflow Vulnerability
* Added a Build-Dependency to lynx.
  Closes: #291143: openswan: FTBFS: Missing build dependency.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version="1.0" encoding="ISO-8859-1"?>
 
2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
 
3
                   "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
 
4
<!-- lifted from troff+man by doclifter -->
 
5
<refentry>
 
6
<!-- Generated by db2man.xsl. Don't modify this, modify the source. -->
 
7
<!-- Sh listing suppressed (not used) -->
 
8
<!-- Sp listing suppressed (not used) -->
 
9
<!-- Ip listing suppressed (not used) -->
 
10
<!-- Ip reduced to IP -->
 
11
<refmeta>
 
12
<refentrytitle>IPSEC LWDNSQ</refentrytitle>
 
13
<manvolnum>8</manvolnum>
 
14
</refmeta>
 
15
<refnamediv id='name'>
 
16
<refname>lwdnsq</refname>
 
17
<refpurpose>lookup items in DNS to help pluto (and others)</refpurpose>
 
18
</refnamediv>
 
19
<!-- body begins here -->
 
20
<refsynopsisdiv id='synopsis'>
 
21
<cmdsynopsis>
 
22
  <command>ipsec</command>    <arg choice='plain'><replaceable>lwdnsqlwdnsq</replaceable></arg>
 
23
    <arg choice='opt'>--prompt </arg>
 
24
    <arg choice='opt'>--serial </arg>
 
25
    <sbr/>
 
26
    <arg choice='plain'><replaceable>ipseclwdnsqlwdnsq</replaceable></arg>
 
27
    <arg choice='opt'>--help </arg>
 
28
    <sbr/>
 
29
</cmdsynopsis>
 
30
</refsynopsisdiv>
 
31
 
 
32
 
 
33
<refsect1 id='description'><title>DESCRIPTION</title>
 
34
<para>The <emphasis remap='B'>ipsec lwdnsq</emphasis> is a helper program that does DNS lookups for other programs. It implements an asynchronous interface on stdin/stdout, with an ASCII driven command language.</para>
 
35
 
 
36
 
 
37
<para>If stdin is a tty or if the <option>--prompt</option> option is given, then it issues a prompt to the user. Otherwise, it is silent, except for results.</para>
 
38
 
 
39
 
 
40
<para>The program will accept multiple queries concurrently, with each result being marked with the ID provided on the output. The IDs are strings.</para>
 
41
 
 
42
 
 
43
<para>If the <option>--serial</option> option is given, then the program will not attempt to execute concurrent queries, but will serialize all input and output.</para>
 
44
 
 
45
</refsect1>
 
46
 
 
47
<refsect1 id='query_language'><title>QUERY LANGUAGE</title>
 
48
<para>There are eleven command that the program understands. This is to lookup different types of records in both the forward and reverse maps. Every query includes a queryid, which is returned in the output, on every single line to identify the transaction.</para>
 
49
 
 
50
 
 
51
<refsect2 id='key_queryid_fqdn'><title>KEY queryid FQDN</title>
 
52
 
 
53
 
 
54
<para>This request looks up the KEY resource record for the given <emphasis remap='B'>FQDN.</emphasis>.</para>
 
55
 
 
56
</refsect2>
 
57
 
 
58
<refsect2 id='key4_queryid_abcd'><title>KEY4 queryid A.B.C.D</title>
 
59
 
 
60
 
 
61
<para>This request looks up the KEY resource record found in the reverse map for the IP version 4 address <emphasis remap='B'>A.B.C.D</emphasis>, i.e. it looks up D.C.B.A.in-addr.arpa.</para>
 
62
 
 
63
</refsect2>
 
64
 
 
65
<refsect2 id='key6_queryid_abcd'><title>KEY6 queryid A:B::C:D</title>
 
66
 
 
67
 
 
68
<para>This request looks up the KEY resource record found in the reverse map for the IPv6 address <emphasis remap='B'>A:B::C:D</emphasis>, i.e. it looks the 32-nibble long entry in ip6.arpa (and ip6.int).</para>
 
69
 
 
70
</refsect2>
 
71
 
 
72
<refsect2 id='txt4_queryid_abcd'><title>TXT4 queryid A.B.C.D</title>
 
73
 
 
74
 
 
75
<para>This request looks up the TXT resource record found in the reverse map for the IP version 4 address <emphasis remap='B'>A.B.C.D</emphasis>, i.e. it looks up D.C.B.A.in-addr.arpa.</para>
 
76
 
 
77
</refsect2>
 
78
 
 
79
<refsect2 id='txt6_queryid_abcd'><title>TXT6 queryid A:B::C:D</title>
 
80
 
 
81
 
 
82
<para>This request looks up the TXT resource record found in the reverse map for the IPv6 address <emphasis remap='B'>A:B::C:D</emphasis>, i.e. it looks the 32-nibble long entry in ip6.arpa (and ip6.int).</para>
 
83
 
 
84
</refsect2>
 
85
 
 
86
<refsect2 id='key_queryid_fqdn2'><title>KEY queryid FQDN</title>
 
87
 
 
88
 
 
89
<para>This request looks up the IPSECKEY resource record for the given <emphasis remap='B'>FQDN.</emphasis>. See note about IPSECKEY processing, below.</para>
 
90
 
 
91
</refsect2>
 
92
 
 
93
<refsect2 id='ipseckey4_queryid_abcd'><title>IPSECKEY4 queryid A.B.C.D</title>
 
94
 
 
95
 
 
96
<para>This request looks up the IPSECKEY resource record found in the reverse map for the IP version 4 address <emphasis remap='B'>A.B.C.D</emphasis>, i.e. it looks up D.C.B.A.in-addr.arpa. See special note about IPSECKEY processing, below.</para>
 
97
 
 
98
</refsect2>
 
99
 
 
100
<refsect2 id='ipseckey6_queryid_abcd'><title>IPSECKEY6 queryid A:B::C:D</title>
 
101
 
 
102
 
 
103
<para>This request looks up the IPSECKEY resource record found in the reverse map for the IPv6 address <emphasis remap='B'>A:B::C:D</emphasis>, i.e. it looks the 32-nibble long entry in ip6.arpa (and ip6.int). See special note about IPSECKEY processing, below.</para>
 
104
 
 
105
</refsect2>
 
106
 
 
107
<refsect2 id='oe4_queryid_abcd'><title>OE4 queryid A.B.C.D</title>
 
108
 
 
109
 
 
110
<para>This request looks an appropriate record for Opportunistic Encryption for the given IP address. This attempts to look for the delegation record. This may be one of IPSECKEY, KEY, or TXT record. Unless configured otherwise, (see OE4 Directives, below), then a query type of ANY will be used to retrieve all relevant records, and all will be returned.</para>
 
111
 
 
112
</refsect2>
 
113
 
 
114
<refsect2 id='oe6_queryid_abcd'><title>OE6 queryid A:B::C:D</title>
 
115
 
 
116
 
 
117
<para>This request looks an appropriate record for Opportunistic Encryption for the given IPv6 address. This attempts to look for the delegation record. This may be one of IPSECKEY, KEY, or TXT record. Unless configured otherwise, (see OE Directives, below), then a query type of ALL will be used to retrieve all relevant records, and all will be returned. i.e. it looks the 32-nibble long entry in ip6.arpa (and ip6.int).</para>
 
118
 
 
119
</refsect2>
 
120
 
 
121
<refsect2 id='a_queryid_fqdn'><title>A queryid FQDN</title>
 
122
 
 
123
 
 
124
<para>This request looks up the A (IPv4) resource record for the given <emphasis remap='B'>FQDN.</emphasis>.</para>
 
125
 
 
126
</refsect2>
 
127
 
 
128
<refsect2 id='aaaa_queryid_fqdn'><title>AAAA queryid FQDN</title>
 
129
 
 
130
 
 
131
<para>This request looks up the AAAA (IPv6) resource record for the given <emphasis remap='B'>FQDN.</emphasis>.</para>
 
132
 
 
133
</refsect2>
 
134
</refsect1>
 
135
 
 
136
<refsect1 id='replies_to_queries'><title>REPLIES TO QUERIES</title>
 
137
<para>All replies from the queries are in the following format:</para> 
 
138
 
 
139
<literallayout remap='.nf'>
 
140
 
 
141
&lt;ID&gt; &lt;TIME&gt; &lt;TTL&gt; &lt;TYPE&gt; &lt;TYPE-SPECIFIC&gt; \n
 
142
 
 
143
</literallayout> <!-- .fi -->
 
144
<variablelist remap='TP'>
 
145
  <varlistentry>
 
146
  <term><emphasis remap='I'>ID</emphasis></term>
 
147
  <listitem>
 
148
<para>this is the <emphasis remap='B'>queryid</emphasis> value that was provided in the query. It is repeated on every line to permit the replies to be properly associated with the query. When the response is not ascribable to particular query (such as for a mis-formed query), then the query ID "0" will be used.</para>
 
149
 
 
150
  </listitem>
 
151
  </varlistentry>
 
152
  <varlistentry>
 
153
  <term><emphasis remap='I'>TIME</emphasis></term>
 
154
  <listitem>
 
155
<para>this is the current time in seconds since epoch.</para>
 
156
 
 
157
  </listitem>
 
158
  </varlistentry>
 
159
  <varlistentry>
 
160
  <term><emphasis remap='I'>TTL</emphasis></term>
 
161
  <listitem>
 
162
<para>for answers which have a time to live, this is the current value. The answer is valid for this number of seconds. If there is no useful value here, then the number 0 is used.</para>
 
163
 
 
164
  </listitem>
 
165
  </varlistentry>
 
166
  <varlistentry>
 
167
  <term><emphasis remap='I'>TYPE</emphasis></term>
 
168
  <listitem>
 
169
<para>This is the type of the record that is being returned. The types are described in the next section. The TYPE specific data that follows is specific to the type.</para>
 
170
 
 
171
 
 
172
  </listitem>
 
173
  </varlistentry>
 
174
</variablelist>
 
175
 
 
176
<para>The replies are limited to 4096 bytes, a value defined as <emphasis remap='B'>LWDNSQ_RESULT_LEN_MAX</emphasis>. This is defined in <emphasis remap='I'>freeswan.h</emphasis>.</para>
 
177
 
 
178
 
 
179
<para>All of the replies which include resource records use the standard presentation format (with no line feeds or carriage returns) in their answer.</para>
 
180
 
 
181
 
 
182
<refsect2 id='start'><title>START</title>
 
183
 
 
184
 
 
185
<para>This reply indicates that a query has been received and has been started. It serves as an anchor point for timing, as well as an acknowledgement.</para>
 
186
 
 
187
</refsect2>
 
188
 
 
189
<refsect2 id='done'><title>DONE</title>
 
190
 
 
191
 
 
192
<para>This reply indicates that a query is entirely over, and no further information from this query will be sent.</para>
 
193
 
 
194
</refsect2>
 
195
 
 
196
<refsect2 id='retry'><title>RETRY</title>
 
197
 
 
198
 
 
199
<para>This reply indicates that a query is entirely over, but that no data was found. The records may exist, but appropriate servers could not be reached.</para>
 
200
 
 
201
</refsect2>
 
202
 
 
203
<refsect2 id='fatal'><title>FATAL</title>
 
204
 
 
205
 
 
206
<para>This reply indicates that a query is entirely over, and that no data of the type requested could be found. There were no timeouts, and all servers were available and confirmed non-existances. There may be NXT records returned prior to this.</para>
 
207
 
 
208
</refsect2>
 
209
 
 
210
<refsect2 id='cname'><title>CNAME</title>
 
211
 
 
212
 
 
213
<para>This is an interim reply, and indicates that a CNAME was found (and followed) while performing the query. The value of the CNAME is present in the type specific section.</para>
 
214
 
 
215
</refsect2>
 
216
 
 
217
<refsect2 id='cnamefrom'><title>CNAMEFROM</title>
 
218
 
 
219
 
 
220
<para>This is an interim reply, and indicates that a CNAME was found. The original name that was queries for was not the canonical name, and this reply indicates the name that was actually followed.</para>
 
221
 
 
222
</refsect2>
 
223
 
 
224
<refsect2 id='name2'><title>NAME</title>
 
225
 
 
226
 
 
227
<para>This is an interim reply. The original name that was queries for was not the canonical name. This reply indicates the canonical name.</para>
 
228
 
 
229
</refsect2>
 
230
 
 
231
<refsect2 id='dnssec'><title>DNSSEC</title>
 
232
 
 
233
 
 
234
<para>This is an interim reply. It is followed either by "OKAY" or "not present. It indicates if DNSSEC was available on the reply.</para>
 
235
 
 
236
</refsect2>
 
237
 
 
238
<refsect2 id='txt_and_adtxt'><title>TXT and AD-TXT</title>
 
239
 
 
240
 
 
241
<para>This is an interim reply. If there are TXT resource records in the reply, then each one is presented using this type. If preceeded by AD-, then this record was signed with DNSSEC.</para>
 
242
 
 
243
</refsect2>
 
244
 
 
245
<refsect2 id='a_and_ada'><title>A and AD-A</title>
 
246
 
 
247
 
 
248
<para>This is an interim reply. If there are A resource records in the reply, then each one is presented using this type. If preceeded by AD-, then this record was signed with DNSSEC.</para>
 
249
 
 
250
</refsect2>
 
251
 
 
252
<refsect2 id='aaaa_and_adaaaa'><title>AAAA and AD-AAAA</title>
 
253
 
 
254
 
 
255
<para>This is an interim reply. If there are AAAA resource records in the reply, then each one is presented using this type. If preceeded by AD-, then this record was signed with DNSSEC.</para>
 
256
 
 
257
</refsect2>
 
258
 
 
259
<refsect2 id='ptr_and_adptr'><title>PTR and AD-PTR</title>
 
260
 
 
261
 
 
262
<para>This is an interim reply. If there are PTR resource records in the reply, then each one is presented using this type. If preceeded by AD-, then this record was signed with DNSSEC.</para>
 
263
 
 
264
</refsect2>
 
265
 
 
266
<refsect2 id='key_and_adkey'><title>KEY and AD-KEY</title>
 
267
 
 
268
 
 
269
<para>This is an interim reply. If there are KEY resource records in the reply, then each one is presented using this type. If preceeded by AD-, then this record was signed with DNSSEC.</para>
 
270
 
 
271
</refsect2>
 
272
 
 
273
<refsect2 id='ipseckey_and_adipseckey'><title>IPSECKEY and AD-IPSECKEY</title>
 
274
 
 
275
 
 
276
<para>This is an interim reply. If there are IPSEC resource records in the reply, then each one is presented using this type. If preceeded by AD-, then this record was signed with DNSSEC.</para>
 
277
 
 
278
</refsect2>
 
279
</refsect1>
 
280
 
 
281
<refsect1 id='special_ipseckey_processing'><title>SPECIAL IPSECKEY PROCESSING</title>
 
282
<para>At the time of this writing, the IPSECKEY resource record is not entirely specified. In particular no resource record number has been assigned. This program assumes that it is resource record number 45. If the file /etc/ipsec.d/lwdnsq.conf exists, and contains a line like</para> 
 
283
 
 
284
<literallayout remap='.nf'>
 
285
 
 
286
ipseckey_rr=<emphasis remap='B'>number</emphasis>
 
287
 
 
288
</literallayout> <!-- .fi -->
 
289
<para> then this number will be used instead. The file is read only once at startup.</para>
 
290
 
 
291
</refsect1>
 
292
 
 
293
<refsect1 id='oe_directives'><title>OE DIRECTIVES</title>
 
294
<para>If the file /etc/ipsec.d/lwdnsq.conf exists, and contains a line like</para> 
 
295
 
 
296
<literallayout remap='.nf'>
 
297
 
 
298
queryany=false
 
299
 
 
300
</literallayout> <!-- .fi -->
 
301
<para> then instead of doing an ALL query when looking for OE delegation records, lwdnsq will do a series of queries. It will first look for IPSECKEY, and then TXT record. If it finds neither, it will then look for KEY records of all kinds, although they do not contain delegation information.</para>
 
302
 
 
303
</refsect1>
 
304
 
 
305
<refsect1 id='special_ipseckey_processing2'><title>SPECIAL IPSECKEY PROCESSING</title>
 
306
<literallayout remap='.nf'>
 
307
 
 
308
/etc/ipsec.d/lwdnsq.conf
 
309
 
 
310
</literallayout> <!-- .fi -->
 
311
 
 
312
</refsect1>
 
313
 
 
314
<refsect1 id='author'><title>AUTHOR</title>
 
315
<para>Michael Richardson &lt;mcr@sandelman.ottawa.on.ca&gt;.</para>
 
316
</refsect1>
 
317
</refentry>
 
318