/*
 * Copyright (C) Internet Systems Consortium, Inc. ("ISC")
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
 * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 * PERFORMANCE OF THIS SOFTWARE.
 */

// NS3

controls { /* empty */ };

options {
	query-source address 10.53.0.3;
	notify-source 10.53.0.3;
	transfer-source 10.53.0.3;
	port @PORT@;
	session-keyfile "session.key";
	pid-file "named.pid";
	listen-on { 10.53.0.3; };
	listen-on-v6 { none; };
	recursion no;
	notify yes;
	dnssec-enable yes;
	dnssec-validation yes;
	dnssec-loadkeys-interval 10;
	allow-new-zones yes;
};

key rndc_key {
	secret "1234abcd8765";
	algorithm hmac-md5;
};

controls {
	inet 10.53.0.3 port @CONTROLPORT@ allow { any; } keys { rndc_key; };
};

zone "." {
	type hint;
	file "../../common/root.hint";
};

zone "example" {
	type slave;
	masters { 10.53.0.2; };
	file "example.bk";
};

zone "bar" {
	type slave;
	masters { 10.53.0.2; };
	file "bar.bk";
};

zone "secure.example" {
	type master;
	file "secure.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "insecure.example" {
	type master;
	file "insecure.example.db";
};

zone "nsec3.example" {
	type master;
	file "nsec3.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "autonsec3.example" {
	type master;
	file "autonsec3.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "optout.nsec3.example" {
	type master;
	file "optout.nsec3.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "nsec3.nsec3.example" {
	type master;
	file "nsec3.nsec3.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "secure.nsec3.example" {
	type master;
	file "secure.nsec3.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "optout.example" {
	type master;
	file "optout.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "secure.optout.example" {
	type master;
	file "secure.optout.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "nsec3.optout.example" {
	type master;
	file "nsec3.optout.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "optout.optout.example" {
	type master;
	file "optout.optout.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "rsasha256.example" {
	type master;
	file "rsasha256.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "rsasha512.example" {
	type master;
	file "rsasha512.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "nsec.example" {
	type master;
	file "nsec.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "nsec3-to-nsec.example" {
	type master;
	file "nsec3-to-nsec.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "secure-to-insecure.example" {
	type master;
	file "secure-to-insecure.example.db";
	allow-update { any; };
	dnssec-secure-to-insecure yes;
};

zone "secure-to-insecure2.example" {
	type master;
	file "secure-to-insecure2.example.db";
	allow-update { any; };
	auto-dnssec maintain;
	dnssec-secure-to-insecure yes;
};

zone "oldsigs.example" {
	type master;
	file "oldsigs.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "prepub.example" {
	type master;
	file "prepub.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "ttl1.example" {
	type master;
	file "ttl1.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "ttl2.example" {
	type master;
	file "ttl2.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "ttl3.example" {
	type master;
	file "ttl3.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "ttl4.example" {
	type master;
	file "ttl4.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "delay.example" {
	type master;
	file "delay.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "nozsk.example" {
	type master;
	file "nozsk.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "inaczsk.example" {
	type master;
	file "inaczsk.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "inacksk2.example" {
	type master;
	file "inacksk2.example.db";
	allow-update { any; };
	dnssec-dnskey-kskonly yes;
	auto-dnssec maintain;
};

zone "inacksk3.example" {
	type master;
	file "inacksk3.example.db";
	allow-update { any; };
	dnssec-dnskey-kskonly yes;
	auto-dnssec maintain;
};

zone "inaczsk2.example" {
	type master;
	file "inaczsk2.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

zone "inaczsk3.example" {
	type master;
	file "inaczsk3.example.db";
	allow-update { any; };
	auto-dnssec maintain;
};

include "trusted.conf";
