# 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. import os import pytest import dns.message import isctest pytestmark = pytest.mark.extra_artifacts( [ "ns*/trusted.conf", "ns1/K*", "ns1/dsset-*", "ns1/root.db", "ns1/root.db.signed", "ns1/signer.err", ] ) def check_server_soa(resolver): msg = dns.message.make_query(".", "SOA") msg.flags += dns.flags.AD res1 = isctest.query.tcp(msg, "10.53.0.1") res2 = isctest.query.tcp(msg, resolver) isctest.check.rrsets_equal(res1.answer, res2.answer) assert res2.flags & dns.flags.AD @pytest.mark.skipif( not os.getenv("ECDSAP256SHA256_SUPPORTED"), reason="algorithm ECDSA256 not supported", ) def test_ecdsa256(): check_server_soa("10.53.0.2") @pytest.mark.skipif( not os.getenv("ECDSAP384SHA384_SUPPORTED"), reason="algorithm ECDSA384 not supported", ) def test_ecdsa384(): check_server_soa("10.53.0.3")