From b7ecd18b73a301b28c61e3ac62cd6f7e4ed5c43e Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Sat, 20 Jan 2018 12:24:35 +0000 Subject: Pass an irc::socket::sockaddrs to SocketEngine::SendTo(). --- include/socketengine.h | 5 ++--- src/coremods/core_dns.cpp | 2 +- src/socketengine.cpp | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/include/socketengine.h b/include/socketengine.h index 8549da612..01afb8f91 100644 --- a/include/socketengine.h +++ b/include/socketengine.h @@ -484,11 +484,10 @@ public: * @param buf The buffer in which the data that is sent is stored. * @param len The size of the buffer. * @param flags A flag value that controls the sending of the data. - * @param to The remote IP address and port. - * @param tolen The size of the to parameter. + * @param address The remote IP address and port. * @return This method should return exactly the same values as the system call it emulates. */ - static int SendTo(EventHandler* fd, const void *buf, size_t len, int flags, const sockaddr *to, socklen_t tolen); + static int SendTo(EventHandler* fd, const void* buf, size_t len, int flags, const irc::sockets::sockaddrs& address); /** Abstraction for BSD sockets connect(2). * This function should emulate its namesake system call exactly. diff --git a/src/coremods/core_dns.cpp b/src/coremods/core_dns.cpp index 1040bb036..0a835a67a 100644 --- a/src/coremods/core_dns.cpp +++ b/src/coremods/core_dns.cpp @@ -502,7 +502,7 @@ class MyManager : public Manager, public Timer, public EventHandler // Update name in the original request so question checking works for PTR queries req->question.name = p.question.name; - if (SocketEngine::SendTo(this, buffer, len, 0, &this->myserver.sa, this->myserver.sa_size()) != len) + if (SocketEngine::SendTo(this, buffer, len, 0, this->myserver) != len) throw Exception("DNS: Unable to send query"); // Add timer for timeout diff --git a/src/socketengine.cpp b/src/socketengine.cpp index e02261bad..10a0e51a2 100644 --- a/src/socketengine.cpp +++ b/src/socketengine.cpp @@ -244,9 +244,9 @@ int SocketEngine::Recv(EventHandler* fd, void *buf, size_t len, int flags) return nbRecvd; } -int SocketEngine::SendTo(EventHandler* fd, const void *buf, size_t len, int flags, const sockaddr *to, socklen_t tolen) +int SocketEngine::SendTo(EventHandler* fd, const void* buf, size_t len, int flags, const irc::sockets::sockaddrs& address) { - int nbSent = sendto(fd->GetFd(), (const char*)buf, len, flags, to, tolen); + int nbSent = sendto(fd->GetFd(), (const char*)buf, len, flags, &address.sa, address.sa_size()); stats.UpdateWriteCounters(nbSent); return nbSent; } -- cgit v1.2.3