From 9e38366b9562e1bc099c5392ba0b3cdfebeb9746 Mon Sep 17 00:00:00 2001 From: brain Date: Thu, 15 Apr 2004 12:20:52 +0000 Subject: Mesh tweaks (wasnt sending the ip in the + packet) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@605 e03df62e-2008-0410-955e-edbf42e46eb7 --- include/connection.h | 6 +++--- src/connection.cpp | 4 +++- src/inspircd.cpp | 3 ++- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/include/connection.h b/include/connection.h index 710b90a2d..de6635f4a 100644 --- a/include/connection.h +++ b/include/connection.h @@ -36,9 +36,6 @@ class ircd_connector : public classbase */ sockaddr_in addr; - char host[MAXBUF]; - int port; - /** File descriptor of the connection */ int fd; @@ -65,6 +62,9 @@ class ircd_connector : public classbase bool SetHostAddress(char* host, int port); public: + char host[MAXBUF]; + int port; + bool MakeOutboundConnection(char* host, int port); std::string GetServerName(); diff --git a/src/connection.cpp b/src/connection.cpp index 48127086e..e2eaebfa7 100644 --- a/src/connection.cpp +++ b/src/connection.cpp @@ -128,11 +128,13 @@ bool ircd_connector::MakeOutboundConnection(char* host, int port) { WriteOpers("Failed to look up hostname for %s, using as an ip address",host); this->SetHostAddress(host,port); + SetHostAndPort(host,port); } else { WriteOpers("Found hostname for %s",host); this->SetHostAddress(hoste->h_addr,port); + SetHostAndPort(hoste->h_addr,port); } this->fd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); @@ -192,7 +194,7 @@ bool connection::MeshCookie(char* targethost, int port, long cookie, char* serve ircd_connector connector; - WriteOpers("Establishing meshed link to %s:%d",targethost,port); + WriteOpers("Establishing meshed link to %s:%d",servername,port); if (this->fd) { diff --git a/src/inspircd.cpp b/src/inspircd.cpp index 6eb01466a..ca587b58d 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -6629,10 +6629,11 @@ void handle_link_packet(char* udp_msg, char* udp_host, serverrec *serv) if (!strcasecmp(me[j]->connectors[k].GetServerName().c_str(),udp_host)) { me[j]->connectors[k].SetServerName(servername); + return; } } } - WriteOpers("\2WARNING!\2 %s sent us an authentication packet but we are not authenticating with this server right noe! Possible intrusion attempt!",udp_host); + WriteOpers("\2WARNING!\2 %s sent us an authentication packet but we are not authenticating with this server right now! Possible intrusion attempt!",udp_host); return; } -- cgit v1.2.3