diff options
Diffstat (limited to 'src/inspsocket.cpp')
-rw-r--r-- | src/inspsocket.cpp | 25 |
1 files changed, 2 insertions, 23 deletions
diff --git a/src/inspsocket.cpp b/src/inspsocket.cpp index ebbff448e..59d9558a4 100644 --- a/src/inspsocket.cpp +++ b/src/inspsocket.cpp @@ -48,9 +48,9 @@ BufferedSocket::BufferedSocket(int newfd) SocketEngine::AddFd(this, FD_WANT_FAST_READ | FD_WANT_EDGE_WRITE); } -void BufferedSocket::DoConnect(const std::string& ipaddr, int aport, unsigned int maxtime, const std::string& connectbindip) +void BufferedSocket::DoConnect(const irc::sockets::sockaddrs& dest, const irc::sockets::sockaddrs& bind, unsigned int maxtime) { - BufferedSocketError err = BeginConnect(ipaddr, aport, maxtime, connectbindip); + BufferedSocketError err = BeginConnect(dest, bind, maxtime); if (err != I_ERR_NONE) { state = I_ERROR; @@ -59,27 +59,6 @@ void BufferedSocket::DoConnect(const std::string& ipaddr, int aport, unsigned in } } -BufferedSocketError BufferedSocket::BeginConnect(const std::string& ipaddr, int aport, unsigned int maxtime, const std::string& connectbindip) -{ - irc::sockets::sockaddrs addr, bind; - if (!irc::sockets::aptosa(ipaddr, aport, addr)) - { - ServerInstance->Logs->Log("SOCKET", LOG_DEBUG, "BUG: Hostname passed to BufferedSocket, rather than an IP address!"); - return I_ERR_CONNECT; - } - - bind.sa.sa_family = 0; - if (!connectbindip.empty()) - { - if (!irc::sockets::aptosa(connectbindip, 0, bind)) - { - return I_ERR_BIND; - } - } - - return BeginConnect(addr, bind, maxtime); -} - BufferedSocketError BufferedSocket::BeginConnect(const irc::sockets::sockaddrs& dest, const irc::sockets::sockaddrs& bind, unsigned int timeout) { if (fd < 0) |