summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-06-24 10:27:35 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-06-24 10:27:35 +0000
commitebce54dc1f564f013eac7018f9ab27d308072ef3 (patch)
tree768d80e425e60dbaad0e28656ff45fa7a5a482bb /src/modules/m_spanningtree
parent4d96ae684a31c44ed7509df5a3763d8955e5f15d (diff)
Check for TS==0 in FJOIN
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7406 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_spanningtree')
-rw-r--r--src/modules/m_spanningtree/treesocket1.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/modules/m_spanningtree/treesocket1.cpp b/src/modules/m_spanningtree/treesocket1.cpp
index 0aaa0bd3b..a907bb440 100644
--- a/src/modules/m_spanningtree/treesocket1.cpp
+++ b/src/modules/m_spanningtree/treesocket1.cpp
@@ -806,6 +806,13 @@ bool TreeSocket::ForceJoin(const std::string &source, std::deque<std::string> &p
params[2] = ":" + params[2];
Utils->DoOneToAllButSender(source,"FJOIN",params,source);
+ if (!TS)
+ {
+ Instance->Log(DEFAULT,"*** BUG? *** TS of 0 sent to FJOIN. Are some services authors smoking craq, or is it 1970 again?. Dropped.");
+ Instance->SNO->WriteToSnoMask('d', "WARNING: The server %s is sending FJOIN with a TS of zero. Total craq. Command was dropped.", source.c_str());
+ return true;
+ }
+
/* If our TS is less than theirs, we dont accept their modes */
if (ourTS < TS)
apply_other_sides_modes = false;