summaryrefslogtreecommitdiff
path: root/modules/protocol/plexus.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2012-11-01 14:06:34 -0400
committerAdam <Adam@anope.org>2012-11-01 14:47:23 -0400
commit9aa71af1e5aa1d4f9c5fbd54306fc9494efe8bf2 (patch)
treef9b05391ae852e7b0cf211cc5beab583288cba60 /modules/protocol/plexus.cpp
parentb64abebd249e773910bd44bdb85c48a3b631ca59 (diff)
Accept 1.8s svid ts on plexus too
Diffstat (limited to 'modules/protocol/plexus.cpp')
-rw-r--r--modules/protocol/plexus.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/modules/protocol/plexus.cpp b/modules/protocol/plexus.cpp
index 803eed99c..5f1af0cec 100644
--- a/modules/protocol/plexus.cpp
+++ b/modules/protocol/plexus.cpp
@@ -626,7 +626,13 @@ struct IRCDMessageUID : IRCDMessage
ip.clear();
User *user = new User(params[0], params[4], params[9], params[5], ip, source.GetServer(), params[10], params[2].is_pos_number_only() ? convertTo<time_t>(params[2]) : 0, params[3], params[7]);
- if (user && user->server->IsSynced() && nickserv)
+ if (params[8] != "0" && params[8].is_pos_number_only() && convertTo<time_t>(params[8]) == user->timestamp)
+ {
+ NickAlias *na = findnick(user->nick);
+ if (na)
+ user->Login(na->nc);
+ }
+ else if (user && user->server->IsSynced() && nickserv)
nickserv->Validate(user);
return true;