From 5a378e8954717c19deaa618fc326164680383505 Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Mon, 28 Aug 2017 19:28:53 +0100 Subject: Change FailedPortList to store a sockaddrs/int instead of string. --- include/socket.h | 3 +++ include/typedefs.h | 3 --- src/configreader.cpp | 3 +-- src/inspircd.cpp | 2 +- src/socket.cpp | 2 +- 5 files changed, 6 insertions(+), 7 deletions(-) diff --git a/include/socket.h b/include/socket.h index 375697ea1..8c7cc2e4e 100644 --- a/include/socket.h +++ b/include/socket.h @@ -119,6 +119,9 @@ namespace irc } } +/** A list of failed port bindings, used for informational purposes on startup */ +typedef std::vector > FailedPortList; + #include "socketengine.h" /** This class handles incoming connections on client ports. * It will create a new User for every valid connection diff --git a/include/typedefs.h b/include/typedefs.h index 873382999..62ceb564e 100644 --- a/include/typedefs.h +++ b/include/typedefs.h @@ -55,9 +55,6 @@ struct ModResult; typedef TR1NS::unordered_map user_hash; typedef TR1NS::unordered_map chan_hash; -/** A list of failed port bindings, used for informational purposes on startup */ -typedef std::vector > FailedPortList; - /** List of channels to consider when building the neighbor list of a user */ typedef std::vector IncludeChanList; diff --git a/src/configreader.cpp b/src/configreader.cpp index 696035a74..cc478b9b6 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -615,8 +615,7 @@ void ServerConfig::Apply(ServerConfig* old, const std::string &useruid) int j = 1; for (FailedPortList::iterator i = pl.begin(); i != pl.end(); i++, j++) { - errstr << j << ".\tAddress: " << (i->first.empty() ? "" : i->first.c_str()) << "\tReason: " - << i->second << std::endl; + errstr << j << ".\tAddress: " << i->first.str() << "\tReason: " << strerror(i->second) << std::endl; } } } diff --git a/src/inspircd.cpp b/src/inspircd.cpp index a3be309bf..bc0875502 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -437,7 +437,7 @@ InspIRCd::InspIRCd(int argc, char** argv) : int j = 1; for (FailedPortList::iterator i = pl.begin(); i != pl.end(); i++, j++) { - std::cout << j << ".\tAddress: " << (i->first.empty() ? "" : i->first) << " \tReason: " << i->second << std::endl; + std::cout << j << ".\tAddress: " << i->first.str() << " \tReason: " << strerror(i->second) << std::endl; } std::cout << std::endl << "Hint: Try using a public IP instead of blank or *" << std::endl; diff --git a/src/socket.cpp b/src/socket.cpp index a5c1c679a..91c7cdeca 100644 --- a/src/socket.cpp +++ b/src/socket.cpp @@ -70,7 +70,7 @@ int InspIRCd::BindPorts(FailedPortList &failed_ports) } else { - failed_ports.push_back(std::make_pair(bindspec.str(), strerror(errno))); + failed_ports.push_back(std::make_pair(bindspec, errno)); delete ll; } } -- cgit v1.2.3