1; config options
2server:
3	target-fetch-policy: "0 0 0 0 0"
4	qname-minimisation: "no"
5	minimal-responses: no
6
7stub-zone:
8	name: "."
9	stub-addr: 193.0.14.129 	# K.ROOT-SERVERS.NET.
10CONFIG_END
11
12SCENARIO_BEGIN Test ignore of an empty response.
13
14; K.ROOT-SERVERS.NET.
15RANGE_BEGIN 0 100
16	ADDRESS 193.0.14.129
17ENTRY_BEGIN
18MATCH opcode qtype qname
19ADJUST copy_id
20REPLY QR NOERROR
21SECTION QUESTION
22. IN NS
23SECTION ANSWER
24. IN NS	K.ROOT-SERVERS.NET.
25SECTION ADDITIONAL
26K.ROOT-SERVERS.NET.	IN	A	193.0.14.129
27ENTRY_END
28
29ENTRY_BEGIN
30MATCH opcode subdomain
31ADJUST copy_id copy_query
32REPLY QR NOERROR
33SECTION QUESTION
34com. IN NS
35SECTION AUTHORITY
36com.	IN NS	a.gtld-servers.net.
37SECTION ADDITIONAL
38a.gtld-servers.net.	IN 	A	192.5.6.30
39ENTRY_END
40RANGE_END
41
42; a.gtld-servers.net.
43RANGE_BEGIN 0 100
44	ADDRESS 192.5.6.30
45ENTRY_BEGIN
46MATCH opcode qtype qname
47ADJUST copy_id
48REPLY QR NOERROR
49SECTION QUESTION
50com. IN NS
51SECTION ANSWER
52com.	IN NS	a.gtld-servers.net.
53SECTION ADDITIONAL
54a.gtld-servers.net.	IN 	A	192.5.6.30
55ENTRY_END
56
57ENTRY_BEGIN
58MATCH opcode subdomain
59ADJUST copy_id copy_query
60REPLY QR NOERROR
61SECTION QUESTION
62example.com. IN NS
63SECTION AUTHORITY
64example.com.	IN NS	ns.example.com.
65example.com.	IN NS	ns2.example2.com.
66SECTION ADDITIONAL
67ns.example.com.		IN 	A	1.2.3.4
68ENTRY_END
69
70ENTRY_BEGIN
71MATCH opcode subdomain
72ADJUST copy_id copy_query
73REPLY QR NOERROR
74SECTION QUESTION
75example2.com. IN NS
76SECTION AUTHORITY
77example2.com.	IN NS	ns2.example2.com.
78SECTION ADDITIONAL
79ns2.example2.com.		IN 	A	1.2.3.5
80ENTRY_END
81
82ENTRY_BEGIN
83MATCH opcode subdomain
84ADJUST copy_id copy_query
85REPLY QR NOERROR
86SECTION QUESTION
87foo.com. IN NS
88SECTION AUTHORITY
89foo.com.	IN NS	ns.foo.com.
90SECTION ADDITIONAL
91ns.foo.com.		IN 	A	1.2.3.5
92ENTRY_END
93RANGE_END
94
95; ns.example.com.
96RANGE_BEGIN 0 100
97	ADDRESS 1.2.3.4
98ENTRY_BEGIN
99MATCH opcode qtype qname
100ADJUST copy_id
101REPLY QR AA NOERROR
102SECTION QUESTION
103example.com. IN NS
104SECTION ANSWER
105example.com.	IN NS	ns.example.com.
106example.com.	IN NS	ns2.example.net.
107SECTION ADDITIONAL
108ns.example.com.		IN 	A	1.2.3.4
109ENTRY_END
110
111ENTRY_BEGIN
112MATCH opcode qtype qname
113ADJUST copy_id
114REPLY QR AA NOERROR
115SECTION QUESTION
116ns.example.com. IN A
117SECTION ANSWER
118ns.example.com.		IN 	A	1.2.3.4
119ENTRY_END
120
121ENTRY_BEGIN
122MATCH opcode qtype qname
123ADJUST copy_id
124REPLY QR AA NOERROR
125SECTION QUESTION
126ns.example.com. IN AAAA
127SECTION AUTHORITY
128example.com.	IN SOA ns root 4 14400 3600 604800 3600
129ENTRY_END
130
131ENTRY_BEGIN
132MATCH opcode qtype qname
133ADJUST copy_id
134REPLY QR AA NOERROR
135SECTION QUESTION
136www.example.com. IN A
137SECTION ANSWER
138SECTION AUTHORITY
139SECTION ADDITIONAL
140ENTRY_END
141RANGE_END
142
143; ns2.example2.com.
144RANGE_BEGIN 0 100
145	ADDRESS 1.2.3.5
146ENTRY_BEGIN
147MATCH opcode qtype qname
148ADJUST copy_id
149REPLY QR AA NOERROR
150SECTION QUESTION
151example2.com. IN NS
152SECTION ANSWER
153example2.com.	IN NS	ns2.example2.com.
154SECTION ADDITIONAL
155ns2.example2.com.		IN 	A	1.2.3.5
156ENTRY_END
157
158ENTRY_BEGIN
159MATCH opcode qtype qname
160ADJUST copy_id
161REPLY QR AA NOERROR
162SECTION QUESTION
163ns2.example2.com. IN A
164SECTION ANSWER
165ns2.example2.com.		IN 	A	1.2.3.5
166ENTRY_END
167
168ENTRY_BEGIN
169MATCH opcode qtype qname
170ADJUST copy_id
171REPLY QR AA NOERROR
172SECTION QUESTION
173ns2.example2.com. IN AAAA
174SECTION AUTHORITY
175example2.com.	IN SOA ns2 root 4 14400 3600 604800 3600
176ENTRY_END
177
178ENTRY_BEGIN
179MATCH opcode qtype qname
180ADJUST copy_id
181REPLY QR AA NOERROR
182SECTION QUESTION
183www.example.com. IN A
184SECTION ANSWER
185www.example.com. IN A	10.20.30.40
186ENTRY_END
187
188; foo.com
189ENTRY_BEGIN
190MATCH opcode qtype qname
191ADJUST copy_id
192REPLY QR AA NOERROR
193SECTION QUESTION
194www.foo.com. IN A
195SECTION ANSWER
196ENTRY_END
197
198ENTRY_BEGIN
199MATCH opcode qtype qname
200ADJUST copy_id
201REPLY QR AA NOERROR
202SECTION QUESTION
203ns.foo.com. IN AAAA
204SECTION ANSWER
205SECTION AUTHORITY
206;foo.com.	IN SOA ns2.foo.com root.foo.com 4 14400 3600 604800 3600
207ENTRY_END
208RANGE_END
209
210STEP 1 QUERY
211ENTRY_BEGIN
212REPLY RD
213SECTION QUESTION
214www.example.com. IN A
215ENTRY_END
216
217; recursion happens here.
218STEP 10 CHECK_ANSWER
219ENTRY_BEGIN
220MATCH all
221REPLY QR RD RA NOERROR
222SECTION QUESTION
223www.example.com. IN A
224SECTION ANSWER
225www.example.com. IN A	10.20.30.40
226ENTRY_END
227
228; wait for pending nameserver lookups.
229STEP 20 TRAFFIC
230
231; Test that a nodata stays a nodata.
232STEP 30 QUERY
233ENTRY_BEGIN
234REPLY RD
235SECTION QUESTION
236www.foo.com. IN A
237ENTRY_END
238
239STEP 40 CHECK_ANSWER
240ENTRY_BEGIN
241MATCH all
242REPLY QR RD RA NOERROR
243SECTION QUESTION
244www.foo.com. IN A
245SECTION ANSWER
246ENTRY_END
247
248SCENARIO_END
249