From f0474272303ac9297f637ce956315518138bafff Mon Sep 17 00:00:00 2001 From: William Pitcock Date: Mon, 11 Jun 2012 22:06:36 -0500 Subject: users: add SetClientIP function for irc::sockets::sockaddrs type. Code which touches client_sa should instead use this SetClientIP function so that hooks may be called in the future. --- src/users.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'src/users.cpp') diff --git a/src/users.cpp b/src/users.cpp index 2ee389c86..b05d24871 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -1008,10 +1008,22 @@ irc::sockets::cidr_mask User::GetCIDRMask() return irc::sockets::cidr_mask(client_sa, range); } +bool User::SetClientIP(irc::sockets::sockaddrs *sa) +{ + memcpy(&client_sa, sa, sizeof(irc::sockets::sockaddrs)); + + return true; +} + bool User::SetClientIP(const char* sip) { + irc::sockets::sockaddrs sa; + this->cachedip = ""; - return irc::sockets::aptosa(sip, 0, client_sa); + if (!irc::sockets::aptosa(sip, 0, sa)) + return false; + + return SetClientIP(&sa); } static std::string wide_newline("\r\n"); -- cgit v1.2.3