From e66a8e13c7d2c81cbbd1a6871ee0bceca4833230 Mon Sep 17 00:00:00 2001 From: bert hubert Date: Mon, 28 Sep 2015 07:48:47 +0200 Subject: [PATCH] fixups for geoip, mydns and remote. --- modules/geoipbackend/geoipbackend.cc | 6 +++--- modules/mydnsbackend/mydnsbackend.cc | 8 ++++---- modules/remotebackend/remotebackend.cc | 14 +++++++------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/modules/geoipbackend/geoipbackend.cc b/modules/geoipbackend/geoipbackend.cc index 12a8b755e..3170980f4 100644 --- a/modules/geoipbackend/geoipbackend.cc +++ b/modules/geoipbackend/geoipbackend.cc @@ -84,7 +84,7 @@ void GeoIPBackend::initialize() { BOOST_FOREACH(YAML::Node domain, config["domains"]) { GeoIPDomain dom; dom.id = s_domains.size(); - dom.domain = domain["domain"].as(); + dom.domain = DNSName(domain["domain"].as()); dom.ttl = domain["ttl"].as(); for(YAML::const_iterator recs = domain["records"].begin(); recs != domain["records"].end(); recs++) { @@ -236,8 +236,8 @@ void GeoIPBackend::lookup(const QType &qtype, const DNSName& qdomain, DNSPacket format = format2str(format, ip, v6); // see if the record can be found - if (dom.records.count(format)) { // return static value - map >::iterator i = dom.records.find(format); + if (dom.records.count(DNSName(format))) { // return static value + map >::iterator i = dom.records.find(DNSName(format)); BOOST_FOREACH(DNSResourceRecord rr, i->second) { if (qtype == QType::ANY || rr.qtype == qtype) { rr.scopeMask = (v6 ? 128 : 32); diff --git a/modules/mydnsbackend/mydnsbackend.cc b/modules/mydnsbackend/mydnsbackend.cc index 83cfdb752..9cace468c 100644 --- a/modules/mydnsbackend/mydnsbackend.cc +++ b/modules/mydnsbackend/mydnsbackend.cc @@ -211,9 +211,9 @@ bool MyDNSBackend::getSOA(const DNSName& name, SOAData& soadata, DNSPacket*) { soadata.qname = name; soadata.domain_id = atol(rrow[0].c_str()); - soadata.hostmaster = rrow[1]; + soadata.hostmaster = DNSName(rrow[1]); soadata.serial = atol(rrow[2].c_str()); - soadata.nameserver = rrow[3]; + soadata.nameserver = DNSName(rrow[3]); soadata.refresh = atol(rrow[4].c_str()); soadata.retry = atol(rrow[5].c_str()); soadata.expire = atol(rrow[6].c_str()); @@ -225,7 +225,7 @@ bool MyDNSBackend::getSOA(const DNSName& name, SOAData& soadata, DNSPacket*) { soadata.db = this; if (d_result.size()>1) { - L<send(query) == false || this->recv(answer) == false) return false; - unhashed = getString(answer["result"]["unhashed"]); + unhashed = DNSName(getString(answer["result"]["unhashed"])); before = getString(answer["result"]["before"]); after = getString(answer["result"]["after"]); @@ -521,7 +521,7 @@ bool RemoteBackend::getTSIGKey(const DNSName& name, DNSName* algorithm, std::str !answer["result"].HasMember("content")) throw PDNSException("Invalid response to getTSIGKey, missing field(s)"); - (*algorithm) = getString(answer["result"]["algorithm"]); + (*algorithm) = DNSName(getString(answer["result"]["algorithm"])); content->assign(getString(answer["result"]["content"])); return true; @@ -583,8 +583,8 @@ bool RemoteBackend::getTSIGKeys(std::vector& keys) { struct TSIGKey key; rapidjson::Value value; value = ""; - key.name = getString(JSON_GET((*iter), "name", value)); - key.algorithm = getString(JSON_GET((*iter), "algorithm", value)); + key.name = DNSName(getString(JSON_GET((*iter), "name", value))); + key.algorithm = DNSName(getString(JSON_GET((*iter), "algorithm", value))); key.key = getString(JSON_GET((*iter), "content", value)); if (key.name.empty() || @@ -622,7 +622,7 @@ bool RemoteBackend::getDomainInfo(const DNSName& domain, DomainInfo &di) { value = -1; // parse return value. we need at least zone,serial,kind di.id = getInt(JSON_GET(answer["result"],"id",value)); - di.zone = getString(answer["result"]["zone"]); + di.zone = DNSName(getString(answer["result"]["zone"])); if (answer["result"].HasMember("masters") && answer["result"]["masters"].IsArray()) { rapidjson::Value& value = answer["result"]["masters"]; @@ -977,7 +977,7 @@ bool RemoteBackend::searchRecords(const string &pattern, int maxResults, vector< rapidjson::Value value; value = ""; rr.qtype = getString(JSON_GET((*d_result)["result"][d_index], "qtype", value)); - rr.qname = getString(JSON_GET((*d_result)["result"][d_index], "qname", value)); + rr.qname = DNSName(getString(JSON_GET((*d_result)["result"][d_index], "qname", value))); rr.qclass = QClass::IN; rr.content = getString(JSON_GET((*d_result)["result"][d_index], "content",value)); value = -1; -- 2.40.0