aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/treesocket2.cpp
diff options
context:
space:
mode:
authorGravatar danieldg2010-02-07 03:36:55 +0000
committerGravatar danieldg2010-02-07 03:36:55 +0000
commitd1b146808e53494f42cd6c89f81a6106b7bde2c2 (patch)
treebd7bfa30729543694fe249be1a82ae7c07e89ea0 /src/modules/m_spanningtree/treesocket2.cpp
parentDon't send GODMODE snomask for remote users (let SendGlobalSno handle that) (diff)
More cleanup of quit servers
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12394 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_spanningtree/treesocket2.cpp')
-rw-r--r--src/modules/m_spanningtree/treesocket2.cpp16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/modules/m_spanningtree/treesocket2.cpp b/src/modules/m_spanningtree/treesocket2.cpp
index aacbbc25f..42921058c 100644
--- a/src/modules/m_spanningtree/treesocket2.cpp
+++ b/src/modules/m_spanningtree/treesocket2.cpp
@@ -462,19 +462,13 @@ std::string TreeSocket::GetName()
void TreeSocket::OnTimeout()
{
- if (this->LinkState == CONNECTING)
- {
- ServerInstance->SNO->WriteGlobalSno('l', "CONNECT: Connection to \002%s\002 timed out.", myhost.c_str());
- }
+ ServerInstance->SNO->WriteGlobalSno('l', "CONNECT: Connection to \002%s\002 timed out.", myhost.c_str());
}
void TreeSocket::Close()
{
this->BufferedSocket::Close();
-
- // Test fix for big fuckup
- if (this->LinkState != CONNECTED)
- return;
+ SetError("Remote host closed connection");
// Connection closed.
// If the connection is fully up (state CONNECTED)
@@ -485,9 +479,9 @@ void TreeSocket::Close()
quitserver = this->InboundServerName;
}
TreeServer* s = Utils->FindServer(quitserver);
- if (s)
+ if (s && s->GetSocket() == this)
{
- Squit(s,"Remote host closed the connection");
+ Squit(s,getError());
}
if (!quitserver.empty())
@@ -496,6 +490,6 @@ void TreeSocket::Close()
time_t server_uptime = ServerInstance->Time() - this->age;
if (server_uptime)
- ServerInstance->SNO->WriteGlobalSno('l', "Connection to '\2%s\2' was established for %s", quitserver.c_str(), Utils->Creator->TimeToStr(server_uptime).c_str());
+ ServerInstance->SNO->WriteGlobalSno('l', "Connection to '\2%s\2' was established for %s", quitserver.c_str(), Utils->Creator->TimeToStr(server_uptime).c_str());
}
}