summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/main.cpp
diff options
context:
space:
mode:
authorw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-02-03 15:04:42 +0000
committerw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-02-03 15:04:42 +0000
commitf0683739e2cfaae900a8e3ffac48ad1bc7d75e51 (patch)
tree043a46e1074a3161a6c956b02d7650c73dd64232 /src/modules/m_spanningtree/main.cpp
parent5602af9c71a836aa4a65c43eb7941cc25fb02abf (diff)
Propegate BURST and ENDBURST network-wide for timing of bursts, and to keep XLine application pending until the most opportune moment. Also do some general cleaning up.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8806 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_spanningtree/main.cpp')
-rw-r--r--src/modules/m_spanningtree/main.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/modules/m_spanningtree/main.cpp b/src/modules/m_spanningtree/main.cpp
index 56b208d2c..4f2ff13b2 100644
--- a/src/modules/m_spanningtree/main.cpp
+++ b/src/modules/m_spanningtree/main.cpp
@@ -222,11 +222,19 @@ void ModuleSpanningTree::DoPingChecks(time_t curtime)
}
}
- /* Cancel remote burst mode on any servers which still have it enabled due to latency/lack of data.
+ /*
+ * Cancel remote burst mode on any servers which still have it enabled due to latency/lack of data.
* This prevents lost REMOTECONNECT notices
+ * XXX this should probably not do this until server has been bursting for, say, 60 seconds or something
*/
for (server_hash::iterator i = Utils->serverlist.begin(); i != Utils->serverlist.end(); i++)
- Utils->SetRemoteBursting(i->second, false);
+ {
+ if (i->second->bursting)
+ {
+ ServerInstance->SNO->WriteToSnoMask('l',"Server \002%s\002 has not finished burst, forcing end of burst.", i->second->GetName().c_str());
+ i->second->FinishBurst();
+ }
+ }
}
void ModuleSpanningTree::ConnectServer(Link* x)