; config options
;server:
	trust-anchor: ". IN DS 41524 8 2 5175938255D97A88F9D16A5A46ED3AE373441DF5058C1666D953005D A6BD57F3"
	val-override-date: "20170501000000"

;stub-zone:
;	name: "."
	stub-addr: 10.1.1.1 	# ns.
	stub-name: ns.
CONFIG_END

SCENARIO_BEGIN Test validation of wildcard responses with multiple synthesized RRs.
; ns.
RANGE_BEGIN 0 1000
	ADDRESS 10.1.1.1
	ADDRESS 10.2.2.2
	ADDRESS 10.3.3.3
	;ADDRESS ::1 ;FIXME: can't use ::1 in tests since the transition to linux namespaces
	ADDRESS ::2
	ADDRESS ::3

ENTRY_BEGIN
MATCH opcode qtype
ADJUST copy_id copy_query
REPLY QR AA REFUSED
SECTION QUESTION
. IN RRSIG
ENTRY_END

ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR AA NOERROR
SECTION QUESTION
. IN DNSKEY
SECTION ANSWER
.			3600	IN	DNSKEY	257 3 8 AwEAAbgyvYQ2Vlff/inpv4NZLlIk2+l1sL0JoeOUlWHZ3eeWXZKxQJak QIXyGi8xsuANzu/YStLp31SfU/Fj4piUciqA+U74Lot1S/jcM7/1eczh 69YqGUAPZkreZ3z2DpWzBN4lgPR/w0OvTada3D42uV2bzuSK/nXMiMpZ vP1vZ1ykNRmbksTzA+HnrefRi2yuMSUqMHbtfbfFwqVTQ1ddVwSK7qIJ 02jo95YJUSZDPUUQlczIsFsa7Zxn6gQZl+iaRuDY6nLxxStYYlcqZhVA G5U8Dx4IznQ0FkEJp9RXtv5rmtClcQpudCl1gE0GC/W+TTUAa3hD597f onH+s/OfdCE=
.			3600	IN	RRSIG	DNSKEY 8 0 3600 20170519062759 20170419062759 41524 . GldXJTOYlVu202Dfdn6n6+ueu59rULnFZqpGSWO1b5TWhY0Z58f8JLNq OeGS1R2OxUZHEy6MQGgiBUEbBXxUx5fZh0UI0K9D7FfwIA9A5hmHC86g Ds3YQuGM0XfHT1aVeGPnjbcIGkRvTtD2P8vc12WT0bm56xLzNu33pat8 PB7/60S5KY1quSqw0HksIEo/Brblql6DPVYRUxZE2+xObOehUhc2W1n5 v+/pEzpRJ22CJ17Bvc4Mf8sBGgFqxFzmBcgf4Ae0UG3Fz8GIjwcN80cm dYK9cuaCIKn+m/lk3/tXlNJigNxdYB0N6vr6bBhfHOuv8VhEr+0iKM2G sG0ugg==
ENTRY_END

ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR AA NOERROR
SECTION QUESTION
. IN NS
SECTION ANSWER
.			3600	IN	NS	ns.
.			3600	IN	RRSIG	NS 8 0 3600 20170519062759 20170419062759 41524 . VmrJp+587qjS63rXgtCzIDyja2l8Hp09GB9iUNR33C/P5nkCn3hjsu+u 67c++Ck6/jgKvn9pRW3JdhOaxTeJRZBsYUKq3JtDuHVuV9WaNvDfCJhI /wFMrNTIR1UK9GxHgAWvZ2nBjKNV/nX4w+OB8eDKeT1AGgvoF182pCI0 VX9pbYd2gsMiZsymm5KRuicFxCMxvAa0jmkg9Pua1vQ2kraVjQP/qND4 gEXZaOmGfmm1UUrXlXdnJYrf6j/0zXaVjZdK6TvNh1kEpzXfDX4GLCDa 3dwy7O/h+IRHl7d+X8d1iojdvyJ2qzPkZ9EI7hlEPc7VY2pqNCtC/2WZ c0bf5w==
SECTION ADDITIONAL
ns.			3600	IN	A	10.1.1.1
ns.			3600	IN	A	10.2.2.2
ns.			3600	IN	A	10.3.3.3
ns.			3600	IN	RRSIG	A 8 0 3600 20170519062759 20170419062759 41524 . UtmUBa+ubwWz1BlKcbg/jUhYYPj2qowEjr2IgVMeMopTgESE7Ssg2XMU YY4q2drAXsR/t1uNDIjhDaCXmsyK5yINavxgmPhypt1dnIyXf8+Lfmoi RTP1JKRvsFssQgJMrfCge82oTDYqfmav0NddGNNx829MC5+M/8JtygZU kOczXuwAKclUsFKophlmh3bn3hC6fzBWvRh59j5Voy2oYOw4yHtgDlEN qWQY1BPKYR2FKQG+sVPRhBufWN3uLK2sN8hviaE8gUluwaVx8ekjnr9t twA1h54DRYlJVU2ARCo+xN+hTQG/kt0Rqcr72Vq0LdTxpy+sERQ72tM5 fVvl9Q==
ENTRY_END

ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR AA NOERROR
SECTION QUESTION
ns. IN A
SECTION ANSWER
ns.			3600	IN	A	10.1.1.1
ns.			3600	IN	A	10.2.2.2
ns.			3600	IN	A	10.3.3.3
ns.			3600	IN	RRSIG	A 8 0 3600 20170519062759 20170419062759 41524 . UtmUBa+ubwWz1BlKcbg/jUhYYPj2qowEjr2IgVMeMopTgESE7Ssg2XMU YY4q2drAXsR/t1uNDIjhDaCXmsyK5yINavxgmPhypt1dnIyXf8+Lfmoi RTP1JKRvsFssQgJMrfCge82oTDYqfmav0NddGNNx829MC5+M/8JtygZU kOczXuwAKclUsFKophlmh3bn3hC6fzBWvRh59j5Voy2oYOw4yHtgDlEN qWQY1BPKYR2FKQG+sVPRhBufWN3uLK2sN8hviaE8gUluwaVx8ekjnr9t twA1h54DRYlJVU2ARCo+xN+hTQG/kt0Rqcr72Vq0LdTxpy+sERQ72tM5 fVvl9Q==
SECTION AUTHORITY
*.			0	IN	NSEC	. A AAAA RRSIG NSEC
*.			0	IN	RRSIG	NSEC 8 0 0 20170519141813 20170419141813 41524 . FgFsXY4fdEQZlv5xd2WQuH6b0YIuDoOydNXviOPAoK/FYucZPqPxLAGs C1bQQ82YlPy1SU1HMbggjMNT224sllm0WY0P1PjkPN8XkBbFRZtKl6YO 6Jyav58WZCjDLsRfKYMzFPXe7GqvtB61YkvCf6p/sqxOAuWKqSkHIlyJ VUNETyfYKlp5x7CDZiCnPgAppZUEv0kEQKmTCzTgC+ctj2S25eTAgsDb 8R0FCb5ks+AcvWZZyNTbwvstaz92EqSOCCWkGSDF3gp2Pv5SI+3xUeTy c/NuJ+f366C5w0MsaW+9oXo2zy/aOFULzwFtdH8ZizqzwwNdGS1sqvuw 1UaqkA==
ENTRY_END

ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR AA NOERROR
SECTION QUESTION
ns. IN AAAA
SECTION ANSWER
ns.			3600	IN	AAAA	::1
ns.			3600	IN	AAAA	::2
ns.			3600	IN	AAAA	::3
ns.			3600	IN	RRSIG	AAAA 8 0 3600 20170519141813 20170419141813 41524 . q256A5GuT3+3jMaDXhh7Z2w/lPYNxtSLamf4TPcAuIDm41Fnj4M1OU63 ViuoBM2GNP512YZxL9wjkTXVjbQJ3nfIT4D7vRdtNpcA48lceYRslBOP qxuFLxRNbW+a1iLA28IiouecsmJIpfLNfCR9OAMKnuFbdkDHNDYEVyKt TRDuqANfj9s8tEH5SLwoycAtLxP5nBVPqOCgNJAg7j+qNXcA/I+dhqBf xy9eMNmhMbDN09x0+k63vJcdhsgj1sxAqvnq973r+uM7T1WDBjcn71CS fDP3kplHxM4vGpmDvJ5MkStLQ/+kqGNVb9qUl65gBidsA3SYqkZ3KtxT Br/61w==
SECTION AUTHORITY
*.			0	IN	NSEC	. A AAAA RRSIG NSEC
*.			0	IN	RRSIG	NSEC 8 0 0 20170519141813 20170419141813 41524 . FgFsXY4fdEQZlv5xd2WQuH6b0YIuDoOydNXviOPAoK/FYucZPqPxLAGs C1bQQ82YlPy1SU1HMbggjMNT224sllm0WY0P1PjkPN8XkBbFRZtKl6YO 6Jyav58WZCjDLsRfKYMzFPXe7GqvtB61YkvCf6p/sqxOAuWKqSkHIlyJ VUNETyfYKlp5x7CDZiCnPgAppZUEv0kEQKmTCzTgC+ctj2S25eTAgsDb 8R0FCb5ks+AcvWZZyNTbwvstaz92EqSOCCWkGSDF3gp2Pv5SI+3xUeTy c/NuJ+f366C5w0MsaW+9oXo2zy/aOFULzwFtdH8ZizqzwwNdGS1sqvuw 1UaqkA==
ENTRY_END

ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR AA NOERROR
SECTION QUESTION
ns. IN TXT
SECTION AUTHORITY
.			0	IN	SOA	. . 0 0 0 0 0
*.			0	IN	NSEC	. A AAAA RRSIG NSEC
.			3600	IN	RRSIG	SOA 8 0 3600 20170519141813 20170419141813 41524 . iuxo0/dNl+zFK1i7CnGR0ssx39IkWTkqXWOcbm8ZrN/vnV2lt7tkRctV 4MmoCiIFfTd4R+jWorVlV0eu1FVmm8cvEAPJzZKk79hvS7DrL5cvwlDA OXSS8J2ram3h+eJH2FCHkSKPkqJUlpXPsQbnfVFf4bFTYi5rXE+Nkpij qhACwhHb8HZNay1/L/njW2DvnY40rgoArxKoJyw0lDgYWd2YYsqHjDGp Ditdeam33tEdWmn8N2oSOXOaRZ3MjDL0PL0uOanJ2wiLFs33MlGo/Y1q ncGgLBSiLFEOhpYgPP3CRu7QZxjQjinwq+tRRhwaqyfPPliHO22NblwL 7tp8qg==
*.			0	IN	RRSIG	NSEC 8 0 0 20170519141813 20170419141813 41524 . FgFsXY4fdEQZlv5xd2WQuH6b0YIuDoOydNXviOPAoK/FYucZPqPxLAGs C1bQQ82YlPy1SU1HMbggjMNT224sllm0WY0P1PjkPN8XkBbFRZtKl6YO 6Jyav58WZCjDLsRfKYMzFPXe7GqvtB61YkvCf6p/sqxOAuWKqSkHIlyJ VUNETyfYKlp5x7CDZiCnPgAppZUEv0kEQKmTCzTgC+ctj2S25eTAgsDb 8R0FCb5ks+AcvWZZyNTbwvstaz92EqSOCCWkGSDF3gp2Pv5SI+3xUeTy c/NuJ+f366C5w0MsaW+9oXo2zy/aOFULzwFtdH8ZizqzwwNdGS1sqvuw 1UaqkA==
ENTRY_END

RANGE_END

; recursion happens here, we expect NODATA
STEP 101 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
ns. IN TXT
ENTRY_END

STEP 102 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
ADJUST copy_id
REPLY QR RD RA NOERROR
SECTION QUESTION
ns. IN TXT
SECTION AUTHORITY
.			0	IN	SOA	. . 0 0 0 0 0
ENTRY_END

; recursion happens here, we expect positive answer
STEP 110 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
ns. IN A
ENTRY_END

STEP 111 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
ADJUST copy_id
REPLY QR RD RA NOERROR
SECTION QUESTION
ns. IN A
SECTION ANSWER
ns.			3600	IN	A	10.1.1.1
ns.			3600	IN	A	10.2.2.2
ns.			3600	IN	A	10.3.3.3
ENTRY_END

; recursion happens here, we expect positive answer
STEP 120 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
ns. IN AAAA
ENTRY_END

STEP 121 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
ADJUST copy_id
REPLY QR RD RA NOERROR
SECTION QUESTION
ns. IN AAAA
SECTION ANSWER
ns.			3600	IN	AAAA	::1
ns.			3600	IN	AAAA	::2
ns.			3600	IN	AAAA	::3
ENTRY_END



; retry with DNSSEC enabled

; recursion happens here, we expect NODATA wildcard proof
STEP 131 QUERY
ENTRY_BEGIN
REPLY RD DO
SECTION QUESTION
ns. IN TXT
ENTRY_END

STEP 132 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
ADJUST copy_id
REPLY QR RD RA AD NOERROR
SECTION QUESTION
ns. IN TXT
SECTION AUTHORITY
.			0	IN	SOA	. . 0 0 0 0 0
*.			0	IN	NSEC	. A AAAA RRSIG NSEC
.			3600	IN	RRSIG	SOA 8 0 3600 20170519141813 20170419141813 41524 . iuxo0/dNl+zFK1i7CnGR0ssx39IkWTkqXWOcbm8ZrN/vnV2lt7tkRctV 4MmoCiIFfTd4R+jWorVlV0eu1FVmm8cvEAPJzZKk79hvS7DrL5cvwlDA OXSS8J2ram3h+eJH2FCHkSKPkqJUlpXPsQbnfVFf4bFTYi5rXE+Nkpij qhACwhHb8HZNay1/L/njW2DvnY40rgoArxKoJyw0lDgYWd2YYsqHjDGp Ditdeam33tEdWmn8N2oSOXOaRZ3MjDL0PL0uOanJ2wiLFs33MlGo/Y1q ncGgLBSiLFEOhpYgPP3CRu7QZxjQjinwq+tRRhwaqyfPPliHO22NblwL 7tp8qg==
*.			0	IN	RRSIG	NSEC 8 0 0 20170519141813 20170419141813 41524 . FgFsXY4fdEQZlv5xd2WQuH6b0YIuDoOydNXviOPAoK/FYucZPqPxLAGs C1bQQ82YlPy1SU1HMbggjMNT224sllm0WY0P1PjkPN8XkBbFRZtKl6YO 6Jyav58WZCjDLsRfKYMzFPXe7GqvtB61YkvCf6p/sqxOAuWKqSkHIlyJ VUNETyfYKlp5x7CDZiCnPgAppZUEv0kEQKmTCzTgC+ctj2S25eTAgsDb 8R0FCb5ks+AcvWZZyNTbwvstaz92EqSOCCWkGSDF3gp2Pv5SI+3xUeTy c/NuJ+f366C5w0MsaW+9oXo2zy/aOFULzwFtdH8ZizqzwwNdGS1sqvuw 1UaqkA==
ENTRY_END

STEP 210 QUERY
ENTRY_BEGIN
REPLY RD DO
SECTION QUESTION
ns. IN A
ENTRY_END

STEP 211 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
ADJUST copy_id
REPLY QR RD RA AD NOERROR
SECTION QUESTION
ns. IN A
SECTION ANSWER
ns.			3600	IN	A	10.1.1.1
ns.			3600	IN	A	10.2.2.2
ns.			3600	IN	A	10.3.3.3
ns.			3600	IN	RRSIG	A 8 0 3600 20170519062759 20170419062759 41524 . UtmUBa+ubwWz1BlKcbg/jUhYYPj2qowEjr2IgVMeMopTgESE7Ssg2XMU YY4q2drAXsR/t1uNDIjhDaCXmsyK5yINavxgmPhypt1dnIyXf8+Lfmoi RTP1JKRvsFssQgJMrfCge82oTDYqfmav0NddGNNx829MC5+M/8JtygZU kOczXuwAKclUsFKophlmh3bn3hC6fzBWvRh59j5Voy2oYOw4yHtgDlEN qWQY1BPKYR2FKQG+sVPRhBufWN3uLK2sN8hviaE8gUluwaVx8ekjnr9t twA1h54DRYlJVU2ARCo+xN+hTQG/kt0Rqcr72Vq0LdTxpy+sERQ72tM5 fVvl9Q==
SECTION AUTHORITY
*.			0	IN	NSEC	. A AAAA RRSIG NSEC
*.			0	IN	RRSIG	NSEC 8 0 0 20170519141813 20170419141813 41524 . FgFsXY4fdEQZlv5xd2WQuH6b0YIuDoOydNXviOPAoK/FYucZPqPxLAGs C1bQQ82YlPy1SU1HMbggjMNT224sllm0WY0P1PjkPN8XkBbFRZtKl6YO 6Jyav58WZCjDLsRfKYMzFPXe7GqvtB61YkvCf6p/sqxOAuWKqSkHIlyJ VUNETyfYKlp5x7CDZiCnPgAppZUEv0kEQKmTCzTgC+ctj2S25eTAgsDb 8R0FCb5ks+AcvWZZyNTbwvstaz92EqSOCCWkGSDF3gp2Pv5SI+3xUeTy c/NuJ+f366C5w0MsaW+9oXo2zy/aOFULzwFtdH8ZizqzwwNdGS1sqvuw 1UaqkA==
ENTRY_END

STEP 220 QUERY
ENTRY_BEGIN
REPLY RD DO
SECTION QUESTION
ns. IN AAAA
ENTRY_END

STEP 221 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
ADJUST copy_id
REPLY QR RD RA AD NOERROR
SECTION QUESTION
ns. IN AAAA
SECTION ANSWER
ns.			3600	IN	AAAA	::1
ns.			3600	IN	AAAA	::2
ns.			3600	IN	AAAA	::3
ns.			3600	IN	RRSIG	AAAA 8 0 3600 20170519141813 20170419141813 41524 . q256A5GuT3+3jMaDXhh7Z2w/lPYNxtSLamf4TPcAuIDm41Fnj4M1OU63 ViuoBM2GNP512YZxL9wjkTXVjbQJ3nfIT4D7vRdtNpcA48lceYRslBOP qxuFLxRNbW+a1iLA28IiouecsmJIpfLNfCR9OAMKnuFbdkDHNDYEVyKt TRDuqANfj9s8tEH5SLwoycAtLxP5nBVPqOCgNJAg7j+qNXcA/I+dhqBf xy9eMNmhMbDN09x0+k63vJcdhsgj1sxAqvnq973r+uM7T1WDBjcn71CS fDP3kplHxM4vGpmDvJ5MkStLQ/+kqGNVb9qUl65gBidsA3SYqkZ3KtxT Br/61w==
SECTION AUTHORITY
*.			0	IN	NSEC	. A AAAA RRSIG NSEC
*.			0	IN	RRSIG	NSEC 8 0 0 20170519141813 20170419141813 41524 . FgFsXY4fdEQZlv5xd2WQuH6b0YIuDoOydNXviOPAoK/FYucZPqPxLAGs C1bQQ82YlPy1SU1HMbggjMNT224sllm0WY0P1PjkPN8XkBbFRZtKl6YO 6Jyav58WZCjDLsRfKYMzFPXe7GqvtB61YkvCf6p/sqxOAuWKqSkHIlyJ VUNETyfYKlp5x7CDZiCnPgAppZUEv0kEQKmTCzTgC+ctj2S25eTAgsDb 8R0FCb5ks+AcvWZZyNTbwvstaz92EqSOCCWkGSDF3gp2Pv5SI+3xUeTy c/NuJ+f366C5w0MsaW+9oXo2zy/aOFULzwFtdH8ZizqzwwNdGS1sqvuw 1UaqkA==
ENTRY_END

SCENARIO_END
