summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-01-04 13:52:17 +0000
committerw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-01-04 13:52:17 +0000
commitf4e0d31913649c3b0dc5e56f059838230a19c322 (patch)
treea262f5243780539391bed8f0885e6da847cfa808 /src
parent9ddf78c28be7d497eabc6a2d231957c29b317d47 (diff)
Back out previous patch disabling ADDLINE processing. The problem is in the new factory stuff. This makes it not close the link, and warn about the problem, but not actually fix it yet..
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8627 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r--src/modules/m_spanningtree/treesocket2.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/modules/m_spanningtree/treesocket2.cpp b/src/modules/m_spanningtree/treesocket2.cpp
index f6c512964..926448ad7 100644
--- a/src/modules/m_spanningtree/treesocket2.cpp
+++ b/src/modules/m_spanningtree/treesocket2.cpp
@@ -525,12 +525,18 @@ bool TreeSocket::ChangeHost(const std::string &prefix, std::deque<std::string> &
bool TreeSocket::AddLine(const std::string &prefix, std::deque<std::string> &params)
{
if (params.size() < 6)
+ {
+ this->Instance->SNO->WriteToSnoMask('x',"%s sent me a malformed ADDLINE of type %s.",prefix.c_str(),params[0].c_str());
return true;
+ }
XLineFactory* xlf = Instance->XLines->GetFactory(params[0]);
if (!xlf)
- return false;
+ {
+ this->Instance->SNO->WriteToSnoMask('x',"%s sent me an unknown ADDLINE type (%s).",prefix.c_str(),params[0].c_str());
+ return true;
+ }
XLine* xl = xlf->Generate(Instance->Time(), atoi(params[4].c_str()), params[2].c_str(), params[5].c_str(), params[1].c_str());
xl->SetCreateTime(atoi(params[3].c_str()));
@@ -1381,10 +1387,10 @@ bool TreeSocket::ProcessLine(std::string &line)
}
else if (command == "ADDLINE")
{
-// TreeServer* ServerSource = Utils->FindServer(prefix);
-// if (ServerSource)
-// Utils->SetRemoteBursting(ServerSource, false);
-// return this->AddLine(prefix,params);
+ TreeServer* ServerSource = Utils->FindServer(prefix);
+ if (ServerSource)
+ Utils->SetRemoteBursting(ServerSource, false);
+ return this->AddLine(prefix,params);
}
else if (command == "DELLINE")
{