From: Aki Tuomi Date: Mon, 18 Sep 2017 09:58:25 +0000 (+0300) Subject: bindbackend: Add missing safeGetBBDomainInfo return value checks X-Git-Tag: rec-4.1.0-rc1~33^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F5702%2Fhead;p=thirdparty%2Fpdns.git bindbackend: Add missing safeGetBBDomainInfo return value checks --- diff --git a/modules/bindbackend/bindbackend2.cc b/modules/bindbackend/bindbackend2.cc index eeeb558c13..f7f7a7acb3 100644 --- a/modules/bindbackend/bindbackend2.cc +++ b/modules/bindbackend/bindbackend2.cc @@ -174,7 +174,8 @@ void Bind2Backend::safePutBBDomainInfo(const BB2DomainInfo& bbd) void Bind2Backend::setNotified(uint32_t id, uint32_t serial) { BB2DomainInfo bbd; - safeGetBBDomainInfo(id, &bbd); + if (!safeGetBBDomainInfo(id, &bbd)) + return; bbd.d_lastnotified = serial; safePutBBDomainInfo(bbd); } @@ -256,7 +257,8 @@ bool Bind2Backend::abortTransaction() bool Bind2Backend::feedRecord(const DNSResourceRecord &rr, const DNSName &ordername) { BB2DomainInfo bbd; - safeGetBBDomainInfo(d_transaction_id, &bbd); + if (!safeGetBBDomainInfo(d_transaction_id, &bbd)) + return false; string qname; string name = bbd.d_name.toString(); @@ -522,8 +524,10 @@ string Bind2Backend::DLReloadNowHandler(const vector&parts, Utility::pid if(safeGetBBDomainInfo(zone, &bbd)) { Bind2Backend bb2; bb2.queueReloadAndStore(bbd.d_id); - safeGetBBDomainInfo(zone, &bbd); // Read the *new* domain status - ret<< *i << ": "<< (bbd.d_wasRejectedLastReload ? "[rejected]": "") <<"\t"<