File CVE-2019-10162.patch of Package pdns.13121
diff --git pdns-4.1.8/pdns/mastercommunicator.cc pdns-4.1.8-invalidrecords/pdns/mastercommunicator.cc
index 456957a..ce0355c 100644
--- pdns-4.1.8/pdns/mastercommunicator.cc
+++ pdns-4.1.8-invalidrecords/pdns/mastercommunicator.cc
@@ -50,6 +50,7 @@ void CommunicatorClass::queueNotifyDomain(const DomainInfo& di, UeberBackend* B)
FindNS fns;
+ try {
if (d_onlyNotify.size()) {
B->lookup(QType(QType::NS), di.zone);
while(B->get(rr))
@@ -77,6 +78,16 @@ void CommunicatorClass::queueNotifyDomain(const DomainInfo& di, UeberBackend* B)
hasQueuedItem=true;
}
}
+ }
+ catch (PDNSException &ae) {
+ L << Logger::Error << "Error looking up name servers for " << di.zone << ", cannot notify: " << ae.reason << endl;
+ return;
+ }
+ catch (std::exception &e) {
+ L << Logger::Error << "Error looking up name servers for " << di.zone << ", cannot notify: " << e.what() << endl;
+ return;
+ }
+
set<string> alsoNotify(d_alsoNotify);
B->alsoNotifies(di.zone, &alsoNotify);