From: Michal 'vorner' Vaner Date: Mon, 10 Dec 2012 13:44:48 +0000 (+0100) Subject: [2377] Warn on unexpected EOF after error X-Git-Tag: bind10-1.0.0-beta-release~15^2~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3d1b18082f595a950de2ca4b9b6692b18cd44a2;p=thirdparty%2Fkea.git [2377] Warn on unexpected EOF after error When there's an error, we expect there'll be EOLN somewhere, so we can recover. Warn in case there's EOF. --- diff --git a/src/lib/dns/master_loader.cc b/src/lib/dns/master_loader.cc index 6fd40d830f..f556dde6ea 100644 --- a/src/lib/dns/master_loader.cc +++ b/src/lib/dns/master_loader.cc @@ -204,6 +204,9 @@ MasterLoader::MasterLoaderImpl::loadIncremental(size_t count_limit) { const MasterToken& token(lexer_.getNextToken()); switch (token.getType()) { case MasterToken::END_OF_FILE: + callbacks_.warning(lexer_.getSourceName(), + lexer_.getSourceLine(), + "Unexpected end ond of file"); // TODO: Try pop in case this is not the only // source return (true); diff --git a/src/lib/dns/tests/master_loader_unittest.cc b/src/lib/dns/tests/master_loader_unittest.cc index 184ab6758c..74baa3b174 100644 --- a/src/lib/dns/tests/master_loader_unittest.cc +++ b/src/lib/dns/tests/master_loader_unittest.cc @@ -282,9 +282,8 @@ TEST_F(MasterLoaderTest, brokenZone) { EXPECT_NO_THROW(loader_->load()); EXPECT_FALSE(loader_->loadedSucessfully()); EXPECT_EQ(1, errors_.size()); - // FIXME: The invalid rdata generates a warning. - // And we may want to generate warning ourself here too. - // EXPECT_TRUE(warnings_.empty()); + // The unexpected EOF warning + EXPECT_EQ(1, warnings_.size()); checkRR("example.org", RRType::SOA(), "ns1.example.org. " "admin.example.org. 1234 3600 1800 2419200 7200"); EXPECT_TRUE(rrsets_.empty());