Testsuite: support for multi-chunk DNS TXT records; more cases for dnsdb
[exim.git] / test / scripts / 2200-dnsdb / 2200
1 # dnsdb lookup in string expansions
2
3 exim -be
4 test.ex                    ${lookup dnsdb{test.ex}{$value}fail}
5 s/lash.test.ex             ${lookup dnsdb{s/lash.test.ex}{$value}fail}
6 txt=test.ex                ${lookup dnsdb{txt=test.ex}{$value}fail}
7 >X txt=test.ex             ${lookup dnsdb{txt=test.ex}{$value}fail}
8 >X; txt=test.ex            ${lookup dnsdb{txt=test.ex}{$value}fail}
9 >X, txt=test.ex            ${lookup dnsdb{txt=test.ex}{$value}fail}
10 >X, txt=test.ex            ${lookup dnsdb{txt=test.ex}{$value}fail}
11 txt=long.test.ex           ${lookup dnsdb{     txt=long.test.ex}{$value}fail}
12 >X   txt=long.test.ex      ${lookup dnsdb{>X   txt=long.test.ex}{$value}fail}
13 >X;  txt=long.test.ex      ${lookup dnsdb{>X;  txt=long.test.ex}{$value}fail}
14 >X,  txt=long.test.ex      ${lookup dnsdb{>X,  txt=long.test.ex}{$value}fail}
15 >X,Z txt=long.test.ex      ${lookup dnsdb{>X,Z txt=long.test.ex}{$value}fail}
16 a=black-1.test.ex          ${lookup dnsdb{a=black-1.test.ex}{$value}fail}
17 xxx=test.ex                ${lookup dnsdb{xxx=test.ex}{$value}fail}
18 a=localhost.test.ex        ${lookup dnsdb{a=localhost.test.ex}{$value}fail}
19 cname=alias-eximtesthost.test.ex ${lookup dnsdb{cname=alias-eximtesthost.test.ex}{$value}fail}
20 ns=test.ex                 ${lookup dnsdb{ns=test.ex}{$value}fail}
21 zns=x.y.z.test.ex          ${lookup dnsdb{zns=x.y.z.test.ex}{$value}fail}
22 mx=mxt1.test.ex            ${lookup dnsdb{mx=mxt1.test.ex}{$value}fail}
23 mx=mxt3.test.ex            ${lookup dnsdb{mx=mxt3.test.ex}{$value}fail}
24 mxh=mxt1.test.ex           ${lookup dnsdb{mxh=mxt1.test.ex}{$value}fail}
25 ptr=V4NET.0.0.1            ${lookup dnsdb{ptr=V4NET.0.0.1}{$value}fail}
26 ptr=ptr.test.ex            ${lookup dnsdb{ptr=ptr.test.ex}{$value}fail}
27 srv=_smtp._tcp.srv01.test.ex     ${lookup dnsdb{srv=_smtp._tcp.srv01.test.ex}{$value}{fail}}
28 srv=_smtp._tcp.nosmtp.test.ex    ${lookup dnsdb{srv=_smtp._tcp.nosmtp.test.ex}{$value}{fail}}
29
30 csa=csa1.test.ex           ${lookup dnsdb{csa=csa1.test.ex}}
31 csa=csa2.test.ex           ${lookup dnsdb{csa=csa2.test.ex}}
32
33 soa=test.ex                ${lookup dnsdb{soa=test.ex}{$value}{fail}}
34 soa=a.test.ex              ${lookup dnsdb{>:, soa=test.ex}{$value}{fail}}
35
36 # DNS lookups with multiple items
37
38 ten-1:ten2                 ${lookup dnsdb{a=ten-1.test.ex:ten-2.test.ex}}
39 ten-1:defer:ten2           ${lookup dnsdb{a=ten-1.test.ex:test.again.dns:ten-2.test.ex}}
40 ten-1|ten2                 ${lookup dnsdb{a=<|ten-1.test.ex|ten-2.test.ex}}
41 mxt1;mxt2 | output         ${lookup dnsdb{>|mx=<;mxt1.test.ex;mxt2.test.ex}}
42 mxt1;mxt2 | output+field   ${lookup dnsdb{>|,:mx=<;mxt1.test.ex;mxt2.test.ex}}
43 mxt1;mxt2 | output         ${lookup dnsdb{>|mxh=<;mxt1.test.ex;mxt2.test.ex}}
44 13/14 rbl                  ${lookup dnsdb{> 13.12.11.V4NET.rbl.test.ex:13.12.11.V4NET.rbl.test.ex}}
45 double ptr                 ${lookup dnsdb{ptr=V4NET.0.0.1:V4NET.0.0.2}}
46 ten-1:bad                  ${lookup dnsdb{ a = ten-1.test.ex:badbad.test.ex}{$value}{FAILED}}
47 bad:bad                    ${lookup dnsdb{ a = <; badbad.test.ex ; badbad.test.ex}{$value}{FAILED}}
48
49 defer:defer                ${lookup dnsdb{a=test.again.dns:test.again.dns}}
50 defer_lax:ten-1            ${lookup dnsdb{a=test.again.dns:ten-1.test.ex}}
51 defer_lax:ten-1            ${lookup dnsdb{defer_lax,a=test.again.dns:ten-1.test.ex}}
52 defer_never:ten-1          ${lookup dnsdb{defer_never,a=test.again.dns:ten-1.test.ex}}
53 defer_never:defer          ${lookup dnsdb{defer_never,a=test.again.dns:test.again.dns}}
54 defer_strict:ten-1         ${lookup dnsdb{defer_strict,a=test.again.dns:ten-1.test.ex}}
55
56 # Retry timeout and count.  This only tests the syntax; we do not
57 # have any good way of testing the function.
58
59 delay1500                  ${lookup dnsdb{retrans_1s,retry_2,a=delay1500.test.ex}}
60 ****
61 #
62 # Cacheability
63 exim -d-all+lookup -be
64 a=localhost.test.ex        ${lookup dnsdb{a=localhost.test.ex}{$value}fail}
65 a=localhost.test.ex        ${lookup dnsdb{a=localhost.test.ex}{$value}fail}
66 ****
67 #
68 # TTL-limited noncacheability
69 exim -d-all+lookup -odq user@shorthost.test.ex
70 ****
71 #
72 # ACL defer_strict
73 exim -bs
74 HELO test
75 MAIL FROM:<>
76 RCPT TO:<defer_strict@test.again.dns>
77 QUIT
78 ****
79 #
80 no_msglog_check
81 #