From 1d0da3970b518c283d57b47deb7fb00950f6a3a3 Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Fri, 13 Jan 2023 14:02:09 +0100 Subject: [PATCH] dnsdist: Add more unit tests for the packet overlay --- pdns/dnsdistdist/test-dnsdist-dnsparser.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pdns/dnsdistdist/test-dnsdist-dnsparser.cc b/pdns/dnsdistdist/test-dnsdist-dnsparser.cc index a20dd82650..6bca068f67 100644 --- a/pdns/dnsdistdist/test-dnsdist-dnsparser.cc +++ b/pdns/dnsdistdist/test-dnsdist-dnsparser.cc @@ -71,6 +71,13 @@ BOOST_AUTO_TEST_CASE(test_Overlay) pwR.addOpt(4096, 0, 0); pwR.commit(); + { + // check packet smaller than dnsheader + BOOST_CHECK_THROW(dnsdist::DNSPacketOverlay(std::string_view(reinterpret_cast(response.data()), 11U)), std::runtime_error); + // check corrupted packet + BOOST_CHECK_THROW(dnsdist::DNSPacketOverlay(std::string_view(reinterpret_cast(response.data()), response.size() - 1)), std::runtime_error); + } + dnsdist::DNSPacketOverlay overlay(std::string_view(reinterpret_cast(response.data()), response.size())); BOOST_CHECK_EQUAL(overlay.d_qname, target); BOOST_CHECK_EQUAL(overlay.d_qtype, QType::ANY); -- 2.47.2