From: Ruben d'Arco Date: Thu, 16 May 2013 19:46:06 +0000 (+0200) Subject: Also set ordername on delegate below delegate X-Git-Tag: rec-3.6.0-rc1~556^2~3^2~27 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=df4626b68b7e1162e522ac7812f44e938ee112f3;p=thirdparty%2Fpdns.git Also set ordername on delegate below delegate --- diff --git a/pdns/rfc2136handler.cc b/pdns/rfc2136handler.cc index ce4222f2e0..5fd1f28028 100644 --- a/pdns/rfc2136handler.cc +++ b/pdns/rfc2136handler.cc @@ -340,10 +340,12 @@ uint16_t PacketHandler::performUpdate(const string &msgPrefix, const DNSRecord * if (!i->qtype.getCode()) {// for ENT records, we want to reset things as they have ordername=NULL and auth=NULL di->backend->nullifyDNSSECOrderNameAndUpdateAuth(di->id, i->qname, i->auth); } else { // all other records are simply updated. - for (vector::const_iterator x = delegates.begin(); x != delegates.end(); x++) { - if (*x != i->qname && endsOn(i->qname, *x)) { - isBelowDelegate = true; - break; + if (i->qtype != QType::NS) { // skip NS records, as they always have a ordername + for (vector::const_iterator x = delegates.begin(); x != delegates.end(); x++) { + if (endsOn(i->qname, *x)) { + isBelowDelegate = true; + break; + } } } if (isBelowDelegate)