summaryrefslogtreecommitdiff
path: root/src/configreader.cpp
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2018-09-21 20:54:05 +0100
committerPeter Powell <petpow@saberuk.com>2018-09-23 13:35:15 +0100
commit876b1ae4e280e99f24d37da4b819f108ddb3f1e3 (patch)
treef1449e0b93da7ecd6e4d233a48befd4cef4e9ec4 /src/configreader.cpp
parentf020429fd33ec1a7bf1114b2db1b2fd5d6bc1650 (diff)
Don't sync xlines defined in the config and expire them on rehash.
Closes #1427.
Diffstat (limited to 'src/configreader.cpp')
-rw-r--r--src/configreader.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/configreader.cpp b/src/configreader.cpp
index 6c7cb492a..a8e94586d 100644
--- a/src/configreader.cpp
+++ b/src/configreader.cpp
@@ -108,6 +108,7 @@ static void ReadXLine(ServerConfig* conf, const std::string& tag, const std::str
throw CoreException("<"+tag+":"+key+"> missing at " + ctag->getTagLocation());
std::string reason = ctag->getString("reason", "<Config>");
XLine* xl = make->Generate(ServerInstance->Time(), 0, "<Config>", reason, mask);
+ xl->from_config = true;
if (!ServerInstance->XLines->AddLine(xl, NULL))
delete xl;
}
@@ -446,6 +447,7 @@ void ServerConfig::Fill()
SocketEngine::Close(socktest);
}
+ ServerInstance->XLines->ClearConfigLines();
ReadXLine(this, "badip", "ipmask", ServerInstance->XLines->GetFactory("Z"));
ReadXLine(this, "badnick", "nick", ServerInstance->XLines->GetFactory("Q"));
ReadXLine(this, "badhost", "host", ServerInstance->XLines->GetFactory("K"));