1; config options
2server:
3	target-fetch-policy: "0 0 0 0 0"
4	qname-minimisation: no
5	minimal-responses: no
6	module-config: "cachedb validator iterator"
7	trust-anchor-signaling: no
8	verbosity: 4
9	ede: yes
10	val-log-level: 2
11        trust-anchor: "example.nl. DS 50602 8 2 FA8EE175C47325F4BD46D8A4083C3EBEB11C977D689069F2B41F1A29B22446B1"
12
13
14cachedb:
15	backend: "testframe"
16	secret-seed: "testvalue"
17
18stub-zone:
19	name: "example.nl"
20	stub-addr: 193.0.14.129
21CONFIG_END
22
23SCENARIO_BEGIN Test cachedb support for caching EDEs.
24
25RANGE_BEGIN 0 10
26	ADDRESS 193.0.14.129
27ENTRY_BEGIN
28MATCH opcode qtype qname
29ADJUST copy_id
30REPLY QR AA NOERROR
31SECTION QUESTION
32example.nl.	IN	DNSKEY
33SECTION ANSWER
34ENTRY_END
35
36ENTRY_BEGIN
37MATCH opcode qtype qname
38ADJUST copy_id
39REPLY QR AA NOERROR
40SECTION QUESTION
41example.nl.	IN	A
42SECTION ANSWER
43example.nl.	IN	A	1.2.3.4
44ENTRY_END
45RANGE_END
46
47; get the entry in cache.
48STEP 1 QUERY
49ENTRY_BEGIN
50REPLY RD DO
51SECTION QUESTION
52example.nl. IN A
53SECTION ADDITIONAL
54	HEX_EDNSDATA_BEGIN
55		FF FE 		; option code = 65534 (LDNS_EDNS_UNBOUND_CACHEDB_TESTFRAME_TEST)
56		00 00 		; option length
57	HEX_EDNSDATA_END
58ENTRY_END
59
60; get the answer for it
61STEP 10 CHECK_ANSWER
62ENTRY_BEGIN
63MATCH all ede=9
64REPLY QR RD RA DO SERVFAIL
65SECTION QUESTION
66example.nl. IN A
67ENTRY_END
68
69; query again for the cached entry
70STEP 20 QUERY
71ENTRY_BEGIN
72REPLY RD
73SECTION QUESTION
74example.nl. IN A
75SECTION ADDITIONAL
76	HEX_EDNSDATA_BEGIN
77		FF FE 		; option code = 65534 (LDNS_EDNS_UNBOUND_CACHEDB_TESTFRAME_TEST)
78		00 00 		; option length
79	HEX_EDNSDATA_END
80ENTRY_END
81
82; this must be a cached answer since stub is not answering in this range
83STEP 30 CHECK_ANSWER
84ENTRY_BEGIN
85MATCH all ede=9
86REPLY QR RD RA DO SERVFAIL
87SECTION QUESTION
88example.nl. IN A
89ENTRY_END
90
91SCENARIO_END
92