From 7cb5def29fe62fe106acca0e4498f28efa4e42ba Mon Sep 17 00:00:00 2001 From: brain Date: Mon, 23 May 2005 18:51:54 +0000 Subject: [PATCH] Fixed bug where when a server split all other servers would stop responding git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1479 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/commands.cpp | 1 + src/inspircd.cpp | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/src/commands.cpp b/src/commands.cpp index 5466a6258..916c9bc10 100644 --- a/src/commands.cpp +++ b/src/commands.cpp @@ -2631,6 +2631,7 @@ void handle_amp(char token,char* params,serverrec* source,serverrec* reply, char } } } + log(DEBUG,"Done with netsplit."); } unsigned long authcookie; diff --git a/src/inspircd.cpp b/src/inspircd.cpp index c0603db59..712e26f5e 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -2913,6 +2913,11 @@ int InspIRCd(char** argv, int argc) strlcpy(tcp_msg,msg.c_str(),MAXBUF); if (me[x]) handle_link_packet(tcp_msg, tcp_host, me[x], tcp_sum); + if (!me[x]->FindHost(tcp_host)) + { + log(DEBUG,"Connector gone, bailing!"); + goto label; + } } sums.clear(); // we're done, clear the list for the next operation msgs.clear(); -- 2.39.2