]> granicus.if.org Git - pdns/commit
fixes PowerDNS/pdns#692
authorMark Zealey <mark@markandruth.co.uk>
Mon, 2 Dec 2013 09:19:24 +0000 (11:19 +0200)
committerMark Zealey <mark@markandruth.co.uk>
Mon, 2 Dec 2013 09:19:24 +0000 (11:19 +0200)
commit1dfd8ada7590ec95eac5f7bb5f3429a2917aa411
tree5f495454d48f59c5688ecd4c9b6b1341a071bddb
parent7874ab05a2073a1bfaea6180bbf2ef01afde9cfd
fixes PowerDNS/pdns#692

For the second time when writing a backend I forgot that an ANY query needs to return any SOA data as well. This is because we store our SOA's separately from our other DNS data in order to optimize zone lookups. According to Habbie MyDNS backend has the same bug. The attached patch basically forces an SOA to be included which is actually much more optimal than anything I can do in my backends as I don't have easy access to the knowledge of:

* sd data structure;
* is this query also an SOA

meaning that if I answer it in the backend I have to do a number of additional lookups for information that is already available in the PacketHandler. Additionally, I notice that you are basically doing all the SOA setup anyway if there is anything looking like an SOA entry. So, all this patch does is strip out any SOA entries and then insert one if there should be. This seems to me to both potentially simplify backend code and fix up any user errors more accurately than the current code does.
pdns/packethandler.cc