1
0
mirror of https://github.com/anope/anope.git synced 2026-07-03 07:53:14 +02:00

Add a helper method for getting a description of an uplink.

This commit is contained in:
Sadie Powell
2025-03-02 15:40:17 +00:00
parent f9911dde52
commit 4526fbed96
4 changed files with 24 additions and 5 deletions
+1
View File
@@ -144,6 +144,7 @@ namespace Configuration
Uplink(const Anope::string &_host, int _port, const Anope::string &_password, int _protocol) : host(_host), port(_port), password(_password), protocol(_protocol) { }
inline bool operator==(const Uplink &other) const { return host == other.host && port == other.port && password == other.password && protocol == other.protocol; }
inline bool operator!=(const Uplink &other) const { return !(*this == other); }
Anope::string str() const;
};
}
+18
View File
@@ -23,6 +23,7 @@
using Configuration::File;
using Configuration::Conf;
using Configuration::Internal::Block;
using Configuration::Uplink;
File ServicesConf("anope.conf", false); // Configuration file name
Conf *Config = NULL;
@@ -619,6 +620,23 @@ void Conf::Post(Conf *old)
}
}
Anope::string Uplink::str() const
{
switch (protocol)
{
case AF_INET:
return Anope::printf("%s:%u", this->host.c_str(), this->port);
case AF_INET6:
return Anope::printf("[%s]:%u", this->host.c_str(), this->port);
case AF_UNIX:
return this->host;
}
// Should never be reached.
return "";
}
Block &Conf::GetModule(const Module *m)
{
if (!m)
+1 -1
View File
@@ -162,7 +162,7 @@ int main(int ac, char **av, char **envp)
}
catch (const SocketException &ex)
{
Log(LOG_TERMINAL) << "Unable to connect to uplink #" << (Anope::CurrentUplink + 1) << " (" << Config->Uplinks[Anope::CurrentUplink].host << ":" << Config->Uplinks[Anope::CurrentUplink].port << "): " << ex.GetReason();
Log(LOG_TERMINAL) << "Unable to connect to uplink #" << (Anope::CurrentUplink + 1) << " (" << Config->Uplinks[Anope::CurrentUplink].str() << "): " << ex.GetReason();
}
/* Set up timers */
+4 -4
View File
@@ -34,7 +34,7 @@ public:
}
catch (const SocketException &ex)
{
Log(LOG_TERMINAL) << "Unable to connect to uplink #" << (Anope::CurrentUplink + 1) << " (" << Config->Uplinks[Anope::CurrentUplink].host << ":" << Config->Uplinks[Anope::CurrentUplink].port << "): " << ex.GetReason();
Log(LOG_TERMINAL) << "Unable to connect to uplink #" << (Anope::CurrentUplink + 1) << " (" << Config->Uplinks[Anope::CurrentUplink].str() << "): " << ex.GetReason();
}
}
};
@@ -57,7 +57,7 @@ void Uplink::Connect()
UplinkSock->Bind(Config->GetBlock("serverinfo").Get<const Anope::string>("localhost"));
FOREACH_MOD(OnPreServerConnect, ());
Anope::string ip = Anope::Resolve(u.host, u.protocol);
Log(LOG_TERMINAL) << "Attempting to connect to uplink #" << (Anope::CurrentUplink + 1) << " " << u.host << " (" << ip << '/' << u.port << ") with protocol " << IRCD->GetProtocolName();
Log(LOG_TERMINAL) << "Attempting to connect to uplink #" << (Anope::CurrentUplink + 1) << " " << ip << " (" << u.str() << ") with protocol " << IRCD->GetProtocolName();
UplinkSock->Connect(ip, u.port);
}
@@ -185,7 +185,7 @@ bool UplinkSocket::ProcessRead()
void UplinkSocket::OnConnect()
{
Log(LOG_TERMINAL) << "Successfully connected to uplink #" << (Anope::CurrentUplink + 1) << " " << Config->Uplinks[Anope::CurrentUplink].host << ":" << Config->Uplinks[Anope::CurrentUplink].port;
Log(LOG_TERMINAL) << "Successfully connected to uplink #" << (Anope::CurrentUplink + 1) << " " << Config->Uplinks[Anope::CurrentUplink].str();
IRCD->SendConnect();
FOREACH_MOD(OnServerConnect, ());
}
@@ -193,6 +193,6 @@ void UplinkSocket::OnConnect()
void UplinkSocket::OnError(const Anope::string &err)
{
Anope::string what = !this->flags[SF_CONNECTED] ? "Unable to connect to" : "Lost connection from";
Log(LOG_TERMINAL) << what << " uplink #" << (Anope::CurrentUplink + 1) << " (" << Config->Uplinks[Anope::CurrentUplink].host << ":" << Config->Uplinks[Anope::CurrentUplink].port << ")" << (!err.empty() ? (": " + err) : "");
Log(LOG_TERMINAL) << what << " uplink #" << (Anope::CurrentUplink + 1) << " (" << Config->Uplinks[Anope::CurrentUplink].str() << ")" << (!err.empty() ? (": " + err) : "");
error |= !err.empty();
}