aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/treesocket1.cpp
diff options
context:
space:
mode:
authorGravatar Attila Molnar2014-07-28 14:48:50 +0200
committerGravatar Attila Molnar2014-07-28 14:48:50 +0200
commitd572f1a67dbe8979f616cd2451b11a422cce0ade (patch)
tree3d02fdc1762cd59fb313e984914ef43030fbf90d /src/modules/m_spanningtree/treesocket1.cpp
parentm_spanningtree Squit dead servers immediately when they die, not at the next ... (diff)
m_spanningtree Throw a ProtocolException if a server SQUITs a server it shouldn't
Diffstat (limited to 'src/modules/m_spanningtree/treesocket1.cpp')
-rw-r--r--src/modules/m_spanningtree/treesocket1.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/modules/m_spanningtree/treesocket1.cpp b/src/modules/m_spanningtree/treesocket1.cpp
index 4e738488b..1a8bdd06c 100644
--- a/src/modules/m_spanningtree/treesocket1.cpp
+++ b/src/modules/m_spanningtree/treesocket1.cpp
@@ -154,6 +154,8 @@ CmdResult CommandSQuit::HandleServer(TreeServer* server, std::vector<std::string
ret = CMD_FAILURE;
server = server->GetParent();
}
+ else if (quitting->GetParent() != server)
+ throw ProtocolException("Attempted to SQUIT a non-directly connected server or the parent");
server->SQuitChild(quitting, params[1]);