diff options
Diffstat (limited to 'src/inspsocket.cpp')
-rw-r--r-- | src/inspsocket.cpp | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/src/inspsocket.cpp b/src/inspsocket.cpp index e42990a74..258dd4472 100644 --- a/src/inspsocket.cpp +++ b/src/inspsocket.cpp @@ -89,7 +89,7 @@ void BufferedSocket::SetQueues() } } -bool BufferedSocket::DoBindMagic(const std::string ¤t_ip, bool v6) +bool BufferedSocket::DoBindMagic(const std::string ¤t_ip) { irc::sockets::sockaddrs s; if (!irc::sockets::aptosa(current_ip.c_str(), 0, &s)) @@ -119,18 +119,12 @@ bool BufferedSocket::DoBindMagic(const std::string ¤t_ip, bool v6) bool BufferedSocket::BindAddr(const std::string &ip_to_bind) { ConfigReader Conf(this->ServerInstance); - bool v6 = false; // Case one: If they provided an IP, try bind it if (!ip_to_bind.empty()) { -#ifdef IPV6 - // Check whether or not they are binding to an IPv6 IP.. - if (ip_to_bind.find(':') != std::string::npos) - v6 = true; -#endif // And if it fails, don't do anything. - return this->DoBindMagic(ip_to_bind, v6); + return this->DoBindMagic(ip_to_bind); } for (int j = 0; j < Conf.Enumerate("bind"); j++) @@ -142,20 +136,12 @@ bool BufferedSocket::BindAddr(const std::string &ip_to_bind) // set current IP to the <bind> tag std::string current_ip = Conf.ReadValue("bind","address",j); -#ifdef IPV6 - // Check whether this <bind> is for an ipv6 address - if (current_ip.find(':') != std::string::npos) - v6 = true; - else - v6 = false; -#endif - // Make sure IP is nothing local if (current_ip == "*" || current_ip == "127.0.0.1" || current_ip.empty() || current_ip == "::1") continue; // Try bind, don't fail if it doesn't bind though. - if (this->DoBindMagic(current_ip, v6)) + if (this->DoBindMagic(current_ip)) return true; } |