Testsuite: fix problem with parsing retry records spanning midnight.
[exim.git] / test / dnszones-src / db.test.ex
CommitLineData
c55a77db
PH
1; This is a testing zone file for use when testing DNS handling in Exim. This
2; is a fake zone of no real use - hence no SOA record. The zone name is
3; test.ex. This file is passed through the substitution mechanism before being
4; used by the fakens auxiliary program. This inserts the actual IP addresses
5; of the local host into the zone.
6
7; NOTE (1): apart from ::1, IPv6 addresses must always have 8 components. Do
8; not abbreviate them by using the :: feature. Leading zeros in components may,
9; however, be omitted.
10
11; NOTE (2): the fakens program is very simple and assumes that the buffer into
12; which is puts the response is always going to be big enough. In other words,
13; the expectation is for just a few RRs for each query.
14
15; NOTE (3): the top-level networks for testing addresses are parameterized by
16; the use of V4NET and V6NET. These networks should be such that no real
17; host ever uses them.
18
19test.ex. NS exim.test.ex.
20
21test.ex. TXT "A TXT record for test.ex."
230205fc 22s/lash TXT "A TXT record for s/lash.test.ex."
c55a77db
PH
23
24cname CNAME test.ex.
25
26ptr PTR data.for.ptr.test.ex.
27
28; Standard localhost handling
29
30localhost A 127.0.0.1
31localhost AAAA ::1
32
33; This name exists only if qualified; it is never automatically qualified
34
35dontqualify A V4NET.255.255.254
36
37; A host with upper case letters in its canonical name
38
39UpperCase A 127.0.0.1
40
41; A host with UTF-8 characters in its name
42
43mx.π A V4NET.255.255.255
44
45; A non-standard name for localhost
46
47thishost A 127.0.0.1
48
1cce3af8
PH
49; Something that gives both the IP and the loopback
50
51thisloop A HOSTIPV4
52 A 127.0.0.1
53
54; Something that gives an unreachable IP and the loopback
55
56badloop A V4NET.0.0.1
57 A 127.0.0.1
58
c55a77db
PH
59; Another host with both A and AAAA records
60
6146 A V4NET.0.0.4
62 AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c031
63
64; And another
65
6646b A V4NET.0.0.5
67 AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c033
68
69; A working IPv4 address and a non-working IPv6 address, with different
70; names so they can have different MX values
71
7246c AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c033
7346d A HOSTIPV4
74
75; A host with just a non-local IPv6 address
76
77v6 AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c032
78
79; Alias A and CNAME records for the local host, under the name "eximtesthost"
80
81eximtesthost A HOSTIPV4
82alias-eximtesthost CNAME eximtesthost.test.ex.
83
84; A bad CNAME
85
86badcname CNAME rhubarb.test.ex.
87
88; Test a name containing an underscore
89
90a_b A 99.99.99.99
91
92; The reverse registration for this name is an empty string
93
94empty A V4NET.255.255.255
95
96; Some IPv6 stuff
97
98eximtesthost.ipv6 AAAA HOSTIPV6
99test2.ipv6 AAAA V6NET:2101:12:1:a00:20ff:fe86:a062
100test3.ipv6 AAAA V6NET:1234:5:6:7:8:abc:0d
101
102; A case of forward and backward pointers disagreeing
103
104badA A V4NET.99.99.99
105badB A V4NET.99.99.98
106
107; A host with multiple names in different (sub) domains
108; These are intended to be within test.ex - absence of final dots is deliberate
109
110x.gov.uk A V4NET.99.99.97
111x.co.uk A V4NET.99.99.97
112
113; A host, the reverse lookup of whose IP address gives this name plus another
114; that does not forward resolve to the same address
115
116oneback A V4NET.99.99.90
117host1.masq A V4NET.90.90.90
118
119; Fake hosts are registered in the V4NET.0.0.0 subnet. In the past, the
120; 10.0.0.0/8 network was used; hence the names of the hosts.
121
122ten-1 A V4NET.0.0.1
123ten-2 A V4NET.0.0.2
124ten-3 A V4NET.0.0.3
125ten-3-alias A V4NET.0.0.3
126ten-3xtra A V4NET.0.0.3
127ten-4 A V4NET.0.0.4
128ten-5 A V4NET.0.0.5
129ten-6 A V4NET.0.0.6
130ten-5-6 A V4NET.0.0.5
131 A V4NET.0.0.6
132
133ten-99 A V4NET.0.0.99
134
135black-1 A V4NET.11.12.13
136black-2 A V4NET.11.12.14
137
138myhost A V4NET.10.10.10
139myhost2 A V4NET.10.10.10
140
141other1 A V4NET.12.4.5
142other2 A V4NET.12.3.1
143 A V4NET.12.3.2
144
145other99 A V4NET.99.0.1
146
147testsub.sub A V4NET.99.0.3
148
149; This one's real name really is recurse.test.ex.test.ex. It is done like
150; this for testing host widening, without getting tangled up in qualify issues.
151
152recurse.test.ex A V4NET.99.0.2
153
154; -------- Testing RBL records -------
155
156; V4NET.11.12.13 is deliberately not reverse-registered
157
15813.12.11.V4NET.rbl A 127.0.0.2
159 TXT "This is a test blacklisting message"
16014.12.11.V4NET.rbl A 127.0.0.2
161 TXT "This is a test blacklisting message"
16215.12.11.V4NET.rbl A 127.0.0.2
163 TXT "This is a very long blacklisting message, continuing for ages and ages and certainly being longer than 128 characters which was a previous limit on the length that Exim was prepared to handle."
164
16514.12.11.V4NET.rbl2 A 127.0.0.2
166 TXT "This is a test blacklisting2 message"
16716.12.11.V4NET.rbl2 A 127.0.0.2
168 TXT "This is a test blacklisting2 message"
169
17014.12.11.V4NET.rbl3 A 127.0.0.2
171 TXT "This is a test blacklisting3 message"
17215.12.11.V4NET.rbl3 A 127.0.0.3
173 TXT "This is a very long blacklisting message, continuing for ages and ages and certainly being longer than 128 characters which was a previous limit on the length that Exim was prepared to handle."
174
17520.12.11.V4NET.rbl4 A 127.0.0.6
17621.12.11.V4NET.rbl4 A 127.0.0.7
d6f6e0dc
PH
17722.12.11.V4NET.rbl4 A 127.0.0.128
178 TXT "This is a test blacklisting4 message"
179
18022.12.11.V4NET.rbl5 A 127.0.0.1
181 TXT "This is a test blacklisting5 message"
c55a77db
PH
182
1831.13.13.V4NET.rbl CNAME non-exist.test.ex.
1842.13.13.V4NET.rbl A 127.0.0.1
185 A 127.0.0.2
186
187; -------- Testing MX records --------
188
189mxcased MX 5 ten-99.TEST.EX.
190
191; Points to a host with both A and AAAA
192
193mx46 MX 46 46.test.ex.
194
195; Points to two hosts with both kinds of address, equal precedence
196
197mx4646 MX 46 46.test.ex.
198 MX 46 46b.test.ex.
199
200; Ditto, with a third IPv6 host
201
202mx46466 MX 46 46.test.ex.
203 MX 46 46b.test.ex.
204 MX 46 v6.test.ex.
205
98cd9003
PH
206; This time, change precedence
207
208mx46466b MX 46 46.test.ex.
209 MX 47 46b.test.ex.
210 MX 48 v6.test.ex.
211
c55a77db
PH
212; Points to a host with a working IPv4 and a non-working IPv6 record
213
214mx46cd MX 10 46c.test.ex.
215 MX 11 46d.test.ex.
216
217; Two equal precedence pointing to a v4 and a v6 host
218
219mx246 MX 10 v6.test.ex.
220 MX 10 ten-1.test.ex.
221
222; Lowest-numbered points to local host
223
224mxt1 MX 5 eximtesthost.test.ex.
225
226; Points only to non-existent hosts
227
228mxt2 MX 5 not-exist.test.ex.
229
230; Points to some non-existent hosts;
231; Lowest numbered existing points to local host
232
233mxt3 MX 5 not-exist.test.ex.
234 MX 6 eximtesthost.test.ex.
235
236; Points to some non-existent hosts;
237; Lowest numbered existing points to non-local host
238
239mxt3r MX 5 not-exist.test.ex.
240 MX 6 exim.org.
241
242; Points to an alias
243
244mxt4 MX 5 alias-eximtesthost.test.ex.
245
246; Various combinations of precedence and local host
247
248mxt5 MX 5 eximtesthost.test.ex.
249 MX 5 ten-1.test.ex.
250
251mxt6 MX 5 ten-1.test.ex.
252 MX 6 eximtesthost.test.ex.
253 MX 6 ten-2.test.ex.
254
255mxt7 MX 5 ten-2.test.ex.
256 MX 6 ten-3.test.ex.
257 MX 7 eximtesthost.test.ex.
258 MX 8 ten-1.test.ex.
259
260mxt8 MX 5 ten-2.test.ex.
261 MX 6 ten-3.test.ex.
262 MX 7 eximtesthost.test.ex.
263 MX 7 ten-4.test.ex.
264 MX 8 ten-1.test.ex.
265
266; Same host appearing twice; make some variants in different orders to
267; simulate a real nameserver and its round robinning
268
269mxt9 MX 5 ten-1.test.ex.
270 MX 6 ten-2.test.ex.
271 MX 7 ten-3.test.ex.
272 MX 8 ten-1.test.ex.
273
274mxt9a MX 6 ten-2.test.ex.
275 MX 7 ten-3.test.ex.
276 MX 8 ten-1.test.ex.
277 MX 5 ten-1.test.ex.
278
279mxt9b MX 7 ten-3.test.ex.
280 MX 8 ten-1.test.ex.
281 MX 5 ten-1.test.ex.
282 MX 6 ten-2.test.ex.
283
284; MX pointing to IP address
285
286mxt10 MX 5 V4NET.0.0.1.
287
288; Several MXs pointing to local host
289
290mxt11 MX 5 localhost.test.ex.
291 MX 6 localhost.test.ex.
292
293mxt11a MX 5 localhost.test.ex.
294 MX 6 ten-1.test.ex.
295
296mxt12 MX 5 local1.test.ex.
297 MX 6 local2.test.ex.
298
299local1 A 127.0.0.2
300local2 A 127.0.0.2
301
302; Some more
303
304mxt13 MX 4 other1.test.ex.
305 MX 5 other2.test.ex.
306
307; Different hosts with same IP addresses in the list
308
309mxt14 MX 4 ten-5-6.test.ex.
310 MX 5 ten-5.test.ex.
311 MX 6 ten-6.test.ex.
312
cd9868ec
PH
313; Non-local hosts with different precedence
314
315mxt15 MX 10 ten-1.test.ex.
316 MX 20 ten-2.test.ex.
317
c55a77db
PH
318; Large number of IP addresses at one MX value, and then some
319; at another, to check that hosts_max_try tries the MX different
320; values if it can.
321
322mxt99 MX 1 ten-1.test.ex.
323 MX 1 ten-2.test.ex.
324 MX 1 ten-3.test.ex.
325 MX 1 ten-4.test.ex.
326 MX 1 ten-5.test.ex.
327 MX 1 ten-6.test.ex.
328 MX 3 black-1.test.ex.
329 MX 3 black-2.test.ex.
330
331; Special case test for @mx_any (to doublecheck a reported Exim 3 bug isn't
332; in Exim 4). The MX points to two names, each with multiple addresses. The
333; very last address is the local host. When Exim is testing, it will sort
334; these addresses into ascending order.
335
336mxt98 MX 1 98-1.test.ex.
337 MX 2 98-2.test.ex.
338
33998-1 A V4NET.1.2.3
340 A V4NET.4.5.6
341
34298-2 A V4NET.7.8.9
343 A HOSTIPV4
344
345; IP addresses with the same MX value
346
347mxt97 MX 1 ten-1.test.ex.
348 MX 1 ten-2.test.ex.
349 MX 1 ten-3.test.ex.
350 MX 1 ten-4.test.ex.
351
352; MX pointing to a single-component name that exists if qualified, but not
353; if not. We use the special name dontqualify to stop the fake resolver
354; qualifying it.
355
356mxt1c MX 1 dontqualify.
357
358; MX with UTF-8 characters in its name
359
360π MX 0 mx.π.test.ex.
361
362; -------- Testing SRV records --------
363
364_smtp._tcp.srv01 SRV 0 0 25 ten-1.test.ex.
365
366_smtp._tcp.srv02 SRV 1 3 99 ten-1.test.ex.
367 SRV 1 1 99 ten-2.test.ex.
368 SRV 3 0 66 ten-3.test.ex.
369
370_smtp._tcp.nosmtp SRV 0 0 0 .
371
372_smtp2._tcp.srv03 SRV 0 0 88 ten-4.test.ex.
373
374_smtp._tcp.srv27 SRV 0 0 PORT_S localhost
375
376
377; -------- With some for CSA testing plus their A records -------
378
379_client._smtp.csa1 SRV 1 2 0 csa1.test.ex.
380_client._smtp.csa2 SRV 1 1 0 csa2.test.ex.
381
382csa1 A V4NET.9.8.7
383csa2 A V4NET.9.8.8
384
385; End