diff options
| author | 2010-10-10 00:46:55 -0400 | |
|---|---|---|
| committer | 2010-10-10 00:54:28 -0400 | |
| commit | de3871ce941ab3dc97cebb7a296c828428ab39a0 (patch) | |
| tree | f7f5cd34b52657ea3f07f8dd328e5923086a281e /src/modules/m_spanningtree/server.cpp | |
| parent | Fix compilation (diff) | |
Rewrite TreeSocket timeout and lifecycle management
Diffstat (limited to 'src/modules/m_spanningtree/server.cpp')
| -rw-r--r-- | src/modules/m_spanningtree/server.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/modules/m_spanningtree/server.cpp b/src/modules/m_spanningtree/server.cpp index 237db0136..ee1089ee8 100644 --- a/src/modules/m_spanningtree/server.cpp +++ b/src/modules/m_spanningtree/server.cpp @@ -147,18 +147,19 @@ bool TreeSocket::Outbound_Reply_Server(parameterlist ¶ms) * While we're at it, create a treeserver object so we know about them. * -- w */ - this->LinkState = CONNECTED; - - Utils->timeoutlist.erase(this); linkID = sname; - + LinkState = CONNECTED; MyRoot = new TreeServer(Utils, sname, description, sid, Utils->TreeRoot, this, x->Hidden); - Utils->TreeRoot->AddChild(MyRoot); - params[4] = ":" + params[4]; - /* IMPORTANT: Take password/hmac hash OUT of here before we broadcast the introduction! */ + // pretend this SERVER line was a PING so we don't time out during the burst + NextPing = ServerInstance->Time() + Utils->PingFreq; + LastPingWasGood = true; + + /* Remove password from command prior to sending */ params[1] = "*"; + params[4] = ":" + params[4]; + Utils->DoOneToAllButSender(ServerInstance->Config->GetSID(),"SERVER",params,sname); this->DoBurst(MyRoot); |
