/*
 * Copyright (C) Internet Systems Consortium, Inc. ("ISC")
 *
 * SPDX-License-Identifier: MPL-2.0
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0.  If a copy of the MPL was not distributed with this
 * file, you can obtain one at https://mozilla.org/MPL/2.0/.
 *
 * See the COPYRIGHT file distributed with this work for additional
 * information regarding copyright ownership.
 */

dnssec-policy "internet" {
  keys {
    ksk   key-directory   lifetime unlimited   algorithm ecdsa256;
    zsk   key-directory   lifetime P90D        algorithm ecdsa256;
  };

  nsec3param iterations 15 optout no salt-length 8;
};

dnssec-policy "intranet" {
  keys {
    ksk   key-directory   lifetime unlimited   algorithm ecdsa256;
    zsk   key-directory   lifetime P30D        algorithm ecdsa256;
  };
  nsec3param iterations 15 optout no salt-length 8;
};

dnssec-policy "localhost" {
  keys {
    ksk   key-directory   lifetime unlimited   algorithm ecdsa256;
    zsk   key-directory   lifetime P30D        algorithm ecdsa256;
  };
  nsec3param iterations 15 optout no salt-length 8;
};

options {
    key-directory "global/keys";
};

view "localhost" {
    match-clients { 127.0.0.1; ::1; };
    zone "example.com" IN {
        type primary;
        file "localhost/example.com.zone";
        dnssec-policy "localhost";
        inline-signing yes;
    };
};

view "external" {
    match-clients { 0/0; };
    key-directory "external/keys";
    zone "example.com" IN {
        type primary;
        file "external/example.com.zone";
        dnssec-policy "internet";
        inline-signing yes;
    };
};

view "internal" {
    match-clients { ::/0; };
    key-directory "internal/keys";
    zone "example.com" IN {
        type primary;
        file "internal/example.com.zone";
        dnssec-policy "intranet";
        inline-signing yes;
    };
};
