From: Remi Gacogne Date: Fri, 11 May 2018 13:18:52 +0000 (+0200) Subject: calidns: Accept lines with an ECS value even if we don't use it X-Git-Tag: dnsdist-1.3.1~104^2~3 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9a0a974e954a71f9cf93f7bd3cbf731d2cad10fd;p=pdns calidns: Accept lines with an ECS value even if we don't use it --- diff --git a/pdns/calidns.cc b/pdns/calidns.cc index 58b63013b..e327bbc49 100644 --- a/pdns/calidns.cc +++ b/pdns/calidns.cc @@ -314,6 +314,9 @@ try string line; reportAllTypes(); vector > > unknown, known; + std::vector fields; + fields.reserve(3); + while(getline(ifs, line)) { vector packet; DNSPacketWriter::optvect_t ednsOptions; @@ -322,15 +325,19 @@ try continue; } - auto fields = splitField(line, ' '); - std::string qname = fields.first; - std::string qtype = fields.second; + fields.clear(); + stringtok(fields, line, "\t "); + if ((useECSFromFile && fields.size() < 3) || fields.size() < 2) { + cerr<<"Skipping invalid line '"<