]> granicus.if.org Git - pdns/commitdiff
Revert "Verify domain ownership"
authorKees Monshouwer <mind04@monshouwer.org>
Wed, 15 Jun 2016 08:52:10 +0000 (10:52 +0200)
committermind04 <mind04@monshouwer.org>
Wed, 15 Jun 2016 08:52:10 +0000 (10:52 +0200)
This reverts commit 182f7513802bffb4ab3dd373eadb8f1a64012e22.

modules/gmysqlbackend/gmysqlbackend.cc
modules/godbcbackend/godbcbackend.cc
modules/goraclebackend/goraclebackend.cc
modules/gpgsqlbackend/gpgsqlbackend.cc
modules/gsqlite3backend/gsqlite3backend.cc
pdns/backends/gsql/gsqlbackend.cc
pdns/backends/gsql/gsqlbackend.hh

index 9f23fb16501b3bfc780b4bb77d23f69cd5fa9d91..1519b150504b55db0b114a8c9620b2d882b33895 100644 (file)
@@ -127,7 +127,6 @@ public:
     declare(suffix, "delete-comments-query", "", "DELETE FROM comments WHERE domain_id=?");
     declare(suffix, "search-records-query", "", record_query+" name LIKE ? OR content LIKE ? LIMIT ?");
     declare(suffix, "search-comments-query", "", "SELECT domain_id,name,type,modified_at,account,comment FROM comments WHERE name LIKE ? OR comment LIKE ? LIMIT ?");
-    declare(suffix, "is-our-domain-query", "", "SELECT id FROM domains WHERE id = ? OR name = ?");
   }
 
   DNSBackend *make(const string &suffix="")
index a2f2f1aedd81c596af0d6baea94edf7859756be5..7d3ff9bb1581e5f2f446a25dfb215c7239434ec5 100644 (file)
@@ -126,7 +126,6 @@ public:
     declare(suffix, "delete-comments-query", "", "DELETE FROM comments WHERE domain_id=?");
     declare(suffix, "search-records-query", "", record_query+" name LIKE ? OR content LIKE ? LIMIT ?");
     declare(suffix, "search-comments-query", "", "SELECT domain_id,name,type,modified_at,account,comment FROM comments WHERE name LIKE ? OR comment LIKE ? LIMIT ?");
-    declare(suffix, "is-our-domain-query", "", "SELECT id FROM domains WHERE id = ? OR name = ?");
   }
 
   //! Constructs a new gODBCBackend object.
index 8872b4f8f9ac22b5456bcdfefa010cf71fb024a3..881a5d4fbd8baff0340867f562c00d1605b6998a 100644 (file)
@@ -138,7 +138,6 @@ public:
     declare(suffix, "delete-comments-query", "", "DELETE FROM comments WHERE domain_id=:domain_id");
     declare(suffix, "search-records-query", "", record_query+" name LIKE :value OR content LIKE :value2 LIMIT :limit");
     declare(suffix, "search-comments-query", "", "SELECT domain_id,name,type,modified_at,account,comment FROM comments WHERE name LIKE :value OR comment LIKE :value2 LIMIT :limit");
-    declare(suffix, "is-our-domain-query", "", "SELECT id FROM domains WHERE id = :id OR name = :zone");
 
   }
 
index d23c892676230d39efdb4a5a0c040366bc6c1ecb..9cb993a717c6d3676d8303ac58584d9a76e3789b 100644 (file)
@@ -120,7 +120,7 @@ public:
     declare(suffix, "delete-comments-query", "", "DELETE FROM comments WHERE domain_id=$1");
     declare(suffix, "search-records-query", "", record_query+" name LIKE $1 OR content LIKE $2 LIMIT $3");
     declare(suffix, "search-comments-query", "", "SELECT domain_id,name,type,modified_at,account,comment FROM comments WHERE name LIKE $1 OR comment LIKE $2 LIMIT $3");
-    declare(suffix, "is-our-domain-query", "", "SELECT id FROM domains WHERE id = $1 OR name = $2");
+
   }
 
   DNSBackend *make(const string &suffix="")
index a0f17bb16b171c0ff3d000c6713d7b8e631dcb17..19a222c462f985114f4d2b936d5ccb7e973f6a30 100644 (file)
@@ -136,7 +136,6 @@ public:
     declare(suffix, "delete-comments-query", "", "DELETE FROM comments WHERE domain_id=:domain_id");
     declare(suffix, "search-records-query", "", record_query+" name LIKE :value OR content LIKE :value2 LIMIT :limit");
     declare(suffix, "search-comments-query", "", "SELECT domain_id,name,type,modified_at,account,comment FROM comments WHERE name LIKE :value OR comment LIKE :value2 LIMIT :limit");
-    declare(suffix, "is-our-domain-query", "", "SELECT id FROM domains WHERE id = :id OR name = :zone");
   }
 
   //! Constructs a new gSQLite3Backend object.
index c2bc7376cc41a5408faf9800ecd513a342c071e2..19e1146594bcd1c881cf203a8b33ac43b8fc8f24 100644 (file)
@@ -124,8 +124,6 @@ GSQLBackend::GSQLBackend(const string &mode, const string &suffix)
   d_SearchRecordsQuery = getArg("search-records-query");
   d_SearchCommentsQuery = getArg("search-comments-query");
 
-  d_IsOurDomainQuery = getArg("is-our-domain-query");
-
   d_query_stmt = NULL;
   d_NoIdQuery_stmt = NULL;
   d_IdQuery_stmt = NULL;
@@ -184,7 +182,6 @@ GSQLBackend::GSQLBackend(const string &mode, const string &suffix)
   d_DeleteCommentsQuery_stmt = NULL;
   d_SearchRecordsQuery_stmt = NULL;
   d_SearchCommentsQuery_stmt = NULL;
-  d_IsOurDomainQuery_stmt = NULL;
 }
 
 void GSQLBackend::setNotified(uint32_t domain_id, uint32_t serial)
@@ -217,8 +214,6 @@ void GSQLBackend::setFresh(uint32_t domain_id)
 
 bool GSQLBackend::isMaster(const DNSName &domain, const string &ip)
 {
-  if (!isOurDomain(domain)) return false;
-
   try {
     d_MasterOfDomainsZoneQuery_stmt->
       bind("domain", domain)->
@@ -250,8 +245,6 @@ bool GSQLBackend::isMaster(const DNSName &domain, const string &ip)
 
 bool GSQLBackend::setMaster(const DNSName &domain, const string &ip)
 {
-  if (!isOurDomain(domain)) return false;
-
   try {
     d_UpdateMasterOfZoneQuery_stmt->
       bind("master", ip)->
@@ -267,8 +260,6 @@ bool GSQLBackend::setMaster(const DNSName &domain, const string &ip)
 
 bool GSQLBackend::setKind(const DNSName &domain, const DomainInfo::DomainKind kind)
 {
-  if (!isOurDomain(domain)) return false;
-
   try {
     d_UpdateKindOfZoneQuery_stmt->
       bind("kind", toUpper(DomainInfo::getKindString(kind)))->
@@ -284,8 +275,6 @@ bool GSQLBackend::setKind(const DNSName &domain, const DomainInfo::DomainKind ki
 
 bool GSQLBackend::setAccount(const DNSName &domain, const string &account)
 {
-  if (!isOurDomain(domain)) return false;
-
   try {
     d_UpdateAccountOfZoneQuery_stmt->
             bind("account", account)->
@@ -301,8 +290,6 @@ bool GSQLBackend::setAccount(const DNSName &domain, const string &account)
 
 bool GSQLBackend::getDomainInfo(const DNSName &domain, DomainInfo &di)
 {
-  if (!isOurDomain(domain)) return false;
-
   /* fill DomainInfo from database info:
      id,name,master IP(s),last_check,notified_serial,type,account */
   try {
@@ -444,7 +431,6 @@ bool GSQLBackend::updateDNSSECOrderNameAndAuth(uint32_t domain_id, const DNSName
 {
   if(!d_dnssecQueries)
     return false;
-  if (!isOurDomain(DNSName(""), domain_id)) return false;
 
   if (!ordername.empty()) {
     if (qtype == QType::ANY) {
@@ -508,8 +494,6 @@ bool GSQLBackend::updateDNSSECOrderNameAndAuth(uint32_t domain_id, const DNSName
 
 bool GSQLBackend::updateEmptyNonTerminals(uint32_t domain_id, const DNSName& zonename, set<DNSName>& insert, set<DNSName>& erase, bool remove)
 {
-  if (!isOurDomain(DNSName(""), domain_id)) return false;
-
   if(remove) {
     try {
       d_RemoveEmptyNonTerminalsFromZoneQuery_stmt->
@@ -567,8 +551,6 @@ bool GSQLBackend::getBeforeAndAfterNamesAbsolute(uint32_t id, const string& qnam
 {
   if(!d_dnssecQueries)
     return false;
-  if (!isOurDomain(DNSName(""),id)) return false;
-
   // cerr<<"gsql before/after called for id="<<id<<", qname='"<<qname<<"'"<<endl;
   after.clear();
 
@@ -666,7 +648,6 @@ int GSQLBackend::addDomainKey(const DNSName& name, const KeyData& key)
 {
   if(!d_dnssecQueries)
     return -1;
-  if (!isOurDomain(name)) return false;
 
   try {
     d_AddDomainKeyQuery_stmt->
@@ -687,7 +668,6 @@ bool GSQLBackend::activateDomainKey(const DNSName& name, unsigned int id)
 {
   if(!d_dnssecQueries)
     return false;
-  if (!isOurDomain(name)) return false;
 
   try {
     d_ActivateDomainKeyQuery_stmt->
@@ -706,7 +686,6 @@ bool GSQLBackend::deactivateDomainKey(const DNSName& name, unsigned int id)
 {
   if(!d_dnssecQueries)
     return false;
-  if (!isOurDomain(name)) return false;
 
   try {
     d_DeactivateDomainKeyQuery_stmt->
@@ -725,7 +704,6 @@ bool GSQLBackend::removeDomainKey(const DNSName& name, unsigned int id)
 {
   if(!d_dnssecQueries)
     return false;
-  if (!isOurDomain(name)) return false;
 
   try {
     d_RemoveDomainKeyQuery_stmt->
@@ -835,7 +813,6 @@ bool GSQLBackend::getDomainKeys(const DNSName& name, unsigned int kind, std::vec
 {
   if(!d_dnssecQueries)
     return false;
-  if (!isOurDomain(name)) return false;
 
   try {
     d_ListDomainKeysQuery_stmt->
@@ -878,8 +855,6 @@ void GSQLBackend::alsoNotifies(const DNSName &domain, set<string> *ips)
 
 bool GSQLBackend::getAllDomainMetadata(const DNSName& name, std::map<std::string, std::vector<std::string> >& meta)
 {
-  if (!isOurDomain(name)) return false;
-
   try {
     d_GetAllDomainMetadataQuery_stmt->
       bind("domain", name)->
@@ -937,7 +912,6 @@ bool GSQLBackend::setDomainMetadata(const DNSName& name, const std::string& kind
 {
   if(!d_dnssecQueries && isDnssecDomainMetadata(kind))
     return false;
-  if (!isOurDomain(name)) return false;
 
   try {
     d_ClearDomainMetadataQuery_stmt->
@@ -1009,8 +983,6 @@ void GSQLBackend::lookup(const QType &qtype,const DNSName &qname, DNSPacket *pkt
 
 bool GSQLBackend::list(const DNSName &target, int domain_id, bool include_disabled)
 {
-  if (!isOurDomain(target, domain_id)) return false;
-
   DLOG(L<<"GSQLBackend constructing handle for list of domain id '"<<domain_id<<"'"<<endl);
 
   try {
@@ -1030,7 +1002,6 @@ bool GSQLBackend::list(const DNSName &target, int domain_id, bool include_disabl
 }
 
 bool GSQLBackend::listSubZone(const DNSName &zone, int domain_id) {
-  if (!isOurDomain(DNSName(""), domain_id)) return false;
 
   string wildzone = "%." + toLower(zone.toStringNoDot());
 
@@ -1242,8 +1213,6 @@ void GSQLBackend::getAllDomains(vector<DomainInfo> *domains, bool include_disabl
 
 bool GSQLBackend::replaceRRSet(uint32_t domain_id, const DNSName& qname, const QType& qt, const vector<DNSResourceRecord>& rrset)
 {
-  if (!isOurDomain(DNSName(""), domain_id)) return false;
-
   try {
     if (qt != QType::ANY) {
       d_DeleteRRSetQuery_stmt->
@@ -1329,8 +1298,6 @@ bool GSQLBackend::feedRecord(const DNSResourceRecord &r, string *ordername)
 
 bool GSQLBackend::feedEnts(int domain_id, map<DNSName,bool>& nonterm)
 {
-  if (!isOurDomain(DNSName(""), domain_id)) return false;
-
   for(const auto& nt: nonterm) {
     try {
       d_InsertEmptyNonTerminalOrderQuery_stmt->
@@ -1352,7 +1319,6 @@ bool GSQLBackend::feedEnts3(int domain_id, const DNSName &domain, map<DNSName,bo
 {
   if(!d_dnssecQueries)
       return false;
-  if (!isOurDomain(DNSName(""), domain_id)) return false;
 
   string ordername;
 
@@ -1383,8 +1349,6 @@ bool GSQLBackend::feedEnts3(int domain_id, const DNSName &domain, map<DNSName,bo
 
 bool GSQLBackend::startTransaction(const DNSName &domain, int domain_id)
 {
-  if (domain_id >=0 && !isOurDomain(DNSName(""), domain_id)) return false;
-
   try {
     d_db->startTransaction();
     if(domain_id >= 0) {
@@ -1425,12 +1389,11 @@ bool GSQLBackend::abortTransaction()
 
 bool GSQLBackend::calculateSOASerial(const DNSName& domain, const SOAData& sd, time_t& serial)
 {
-  if (!isOurDomain(DNSName(""), sd.domain_id)) return false;
   if (d_ZoneLastChangeQuery.empty()) {
     // query not set => fall back to default impl
     return DNSBackend::calculateSOASerial(domain, sd, serial);
   }
-
+  
   try {
     d_ZoneLastChangeQuery_stmt->
       bind("domain_id", sd.domain_id)->
@@ -1454,8 +1417,6 @@ bool GSQLBackend::calculateSOASerial(const DNSName& domain, const SOAData& sd, t
 
 bool GSQLBackend::listComments(const uint32_t domain_id)
 {
-  if (!isOurDomain(DNSName(""), domain_id)) return false;
-
   try {
     d_query_name = "list-comments-query";
     d_query_stmt = d_ListCommentsQuery_stmt;
@@ -1683,26 +1644,6 @@ void GSQLBackend::extractComment(const SSqlStatement::row_t& row, Comment& comme
   comment.content = row[5];
 }
 
-bool GSQLBackend::isOurDomain(const DNSName &zone, int domain_id) {
-  try {
-    d_IsOurDomainQuery_stmt->
-      bind("id", domain_id)->
-      bind("zone", zone)->
-      execute()->
-      getResult(d_result)->
-      reset();
-
-    if (!d_result.empty()) {
-      d_result.clear();
-      return true;
-    }
-  } catch (SSqlException &e) {
-    throw PDNSException("GSQLBackend unable to verify ownership of domain: "+e.txtReason());
-  }
-
-  return false;
-}
-
 SSqlStatement::~SSqlStatement() { 
 // make sure vtable won't break 
 }
index 494d8345d39df3a86a6903ce01279c10336d880c..8592bdf3eea6fb4a60b33e0fca4f13fed7f99fa3 100644 (file)
@@ -88,7 +88,6 @@ public:
       d_DeleteCommentsQuery_stmt = d_db->prepare(d_DeleteCommentsQuery, 1);
       d_SearchRecordsQuery_stmt = d_db->prepare(d_SearchRecordsQuery, 3);
       d_SearchCommentsQuery_stmt = d_db->prepare(d_SearchCommentsQuery, 3);
-      d_IsOurDomainQuery_stmt = d_db->prepare(d_IsOurDomainQuery, 2);
     }
   }
 
@@ -155,7 +154,6 @@ public:
     release(&d_DeleteCommentsQuery_stmt);
     release(&d_SearchRecordsQuery_stmt);
     release(&d_SearchCommentsQuery_stmt);
-    release(&d_IsOurDomainQuery_stmt);
   }
 
   void lookup(const QType &, const DNSName &qdomain, DNSPacket *p=0, int zoneId=-1);
@@ -220,7 +218,7 @@ public:
   string directBackendCmd(const string &query);
   bool searchRecords(const string &pattern, int maxResults, vector<DNSResourceRecord>& result);
   bool searchComments(const string &pattern, int maxResults, vector<Comment>& result);
-  bool isOurDomain(const DNSName &zone, int domain_id=-1);
+
 protected:
   string pattern2SQLPattern(const string& pattern);
   void extractRecord(const SSqlStatement::row_t& row, DNSResourceRecord& rr);
@@ -304,8 +302,6 @@ private:
   string d_SearchRecordsQuery;
   string d_SearchCommentsQuery;
 
-  string d_IsOurDomainQuery;
-
   SSqlStatement* d_query_stmt;
 
   SSqlStatement* d_NoIdQuery_stmt;
@@ -365,7 +361,7 @@ private:
   SSqlStatement* d_DeleteCommentsQuery_stmt;
   SSqlStatement* d_SearchRecordsQuery_stmt;
   SSqlStatement* d_SearchCommentsQuery_stmt;
-  SSqlStatement* d_IsOurDomainQuery_stmt;
+
 protected:
   bool d_dnssecQueries;
 };