From: Josh Soref Date: Mon, 14 Jan 2019 04:38:08 +0000 (-0500) Subject: BIND: avoid double // X-Git-Tag: dnsdist-1.6.0-alpha0~20^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3e0a03d04c921e7c47ec95ee8b68191e30a0e02f;p=thirdparty%2Fpdns.git BIND: avoid double // Fixes: Parsing file: ./zones//sub.test.dyndns, domain: sub.test.dyndns --- diff --git a/pdns/bindparser.yy b/pdns/bindparser.yy index 4557c832a1..9f8243fd9e 100644 --- a/pdns/bindparser.yy +++ b/pdns/bindparser.yy @@ -66,6 +66,9 @@ void BindParser::parse(const string &fname) void BindParser::setDirectory(const string &dir) { d_dir=dir; + if (d_dir.back() == '/') { + d_dir.pop_back(); + } bind_directory=d_dir.c_str(); } diff --git a/pdns/test-bindparser_cc.cc b/pdns/test-bindparser_cc.cc index a8761f381b..cd8fda2718 100644 --- a/pdns/test-bindparser_cc.cc +++ b/pdns/test-bindparser_cc.cc @@ -44,18 +44,18 @@ BOOST_AUTO_TEST_CASE(test_parser) BOOST_CHECK_EQUAL(domains[i].masters.size(), nmasters); \ } - checkzone(0, "example.com", "./zones//example.com", master, 0U); - checkzone(1, "test.com", "./zones//test.com", slave, 1U); + checkzone(0, "example.com", "./zones/example.com", master, 0U); + checkzone(1, "test.com", "./zones/test.com", slave, 1U); BOOST_CHECK_EQUAL(domains[1].masters[0].toString(), ComboAddress("1.2.3.4", 5678).toString()); - checkzone(2, "test.dyndns", "./zones//test.dyndns", garblewarble, 0U); - checkzone(3, "wtest.com", "./zones//wtest.com", master, 0U); - checkzone(4, "nztest.com", "./zones//nztest.com", master, 0U); - checkzone(5, "dnssec-parent.com", "./zones//dnssec-parent.com", master, 0U); - checkzone(6, "delegated.dnssec-parent.com", "./zones//delegated.dnssec-parent.com", master, 0U); - checkzone(7, "secure-delegated.dnssec-parent.com", "./zones//secure-delegated.dnssec-parent.com", master, 0U); - checkzone(8, "minimal.com", "./zones//minimal.com", master, 0U); - checkzone(9, "tsig.com", "./zones//tsig.com", master, 0U); - checkzone(10, "stest.com", "./zones//stest.com", master, 0U); + checkzone(2, "test.dyndns", "./zones/test.dyndns", garblewarble, 0U); + checkzone(3, "wtest.com", "./zones/wtest.com", master, 0U); + checkzone(4, "nztest.com", "./zones/nztest.com", master, 0U); + checkzone(5, "dnssec-parent.com", "./zones/dnssec-parent.com", master, 0U); + checkzone(6, "delegated.dnssec-parent.com", "./zones/delegated.dnssec-parent.com", master, 0U); + checkzone(7, "secure-delegated.dnssec-parent.com", "./zones/secure-delegated.dnssec-parent.com", master, 0U); + checkzone(8, "minimal.com", "./zones/minimal.com", master, 0U); + checkzone(9, "tsig.com", "./zones/tsig.com", master, 0U); + checkzone(10, "stest.com", "./zones/stest.com", master, 0U); } BOOST_AUTO_TEST_SUITE_END()