summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAttila Molnar <attilamolnar@hush.com>2016-04-13 11:46:35 +0200
committerAttila Molnar <attilamolnar@hush.com>2016-04-13 11:46:35 +0200
commitdb8d5f98d628f11899e1de58b67cb65a0fbf2457 (patch)
tree8e08fb82a05324a67ad86965998d4cca37f707cb /src
parent2706a993b3f8ee52e2728047fad6a56f7e3cf405 (diff)
m_spanningtree Allow IJOIN with lower TS
Diffstat (limited to 'src')
-rw-r--r--src/modules/m_spanningtree/ijoin.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/modules/m_spanningtree/ijoin.cpp b/src/modules/m_spanningtree/ijoin.cpp
index 78e05db93..c2dbcf7f5 100644
--- a/src/modules/m_spanningtree/ijoin.cpp
+++ b/src/modules/m_spanningtree/ijoin.cpp
@@ -38,12 +38,10 @@ CmdResult CommandIJoin::HandleRemote(RemoteUser* user, std::vector<std::string>&
}
bool apply_modes;
- if (params.size() > 2)
+ if (params.size() > 3)
{
time_t RemoteTS = ServerCommand::ExtractTS(params[2]);
- if (RemoteTS < chan->age)
- throw ProtocolException("Attempted to lower TS via IJOIN. LocalTS=" + ConvToStr(chan->age));
- apply_modes = ((params.size() > 3) && (RemoteTS == chan->age));
+ apply_modes = (RemoteTS <= chan->age);
}
else
apply_modes = false;