]> granicus.if.org Git - pdns/commitdiff
Basic validation of $GENERATE parameters
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Wed, 23 Oct 2019 08:50:33 +0000 (10:50 +0200)
committerOtto Moerbeek <otto.moerbeek@open-xchange.com>
Wed, 23 Oct 2019 08:50:33 +0000 (10:50 +0200)
pdns/zoneparser-tng.cc

index 7ac0c5fe645d553068b5abc53e4534e24191bc5c..5c4ed00db28b040201a14df8b16403084136289b 100644 (file)
@@ -324,6 +324,10 @@ bool ZoneParserTNG::get(DNSResourceRecord& rr, std::string* comment)
       d_templatestep=1;
       d_templatestop=0;
       sscanf(range.c_str(),"%u-%u/%u", &d_templatecounter, &d_templatestop, &d_templatestep);
+      if (d_templatestep < 1 ||
+          d_templatestop < d_templatecounter) {
+        throw exception("Illegal $GENERATE parameters");
+      }
       d_templateline=d_line;
       parts.pop_front();
       parts.pop_front();