From 9a72716fe4fd9c183cd86a6c6d3a75c1d5b02f0b Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Wed, 29 May 2019 14:42:46 +0200 Subject: [PATCH] Check the result of the dynamic pointer cast in getSerialFromRecords() Reported by Coverity (CID 1401665). --- pdns/ixfrutils.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pdns/ixfrutils.cc b/pdns/ixfrutils.cc index e20cfe666..9ff93bbab 100644 --- a/pdns/ixfrutils.cc +++ b/pdns/ixfrutils.cc @@ -99,8 +99,10 @@ uint32_t getSerialFromRecords(const records_t& records, DNSRecord& soaret) for(auto iter = found.first; iter != found.second; ++iter) { auto soa = std::dynamic_pointer_cast(iter->d_content); - soaret = *iter; - return soa->d_st.serial; + if (soa) { + soaret = *iter; + return soa->d_st.serial; + } } return 0; } -- 2.40.0