- // Get the IP that the user is connected to, and bind to that for the outgoing connection
- irc::sockets::sockaddrs laddr;
- socklen_t laddrsz = sizeof(laddr);
-
- if (getsockname(user->GetFd(), &laddr.sa, &laddrsz) != 0)
- {
- user->WriteServ("NOTICE Auth :*** Could not find your ident, using %s instead.", user->ident.c_str());
- return 0;
- }
-
- char ip[INET6_ADDRSTRLEN + 1];
-#ifdef IPV6
- if (laddr.sa.sa_family == AF_INET6)
- inet_ntop(laddr.in6.sin6_family, &laddr.in6.sin6_addr, ip, INET6_ADDRSTRLEN);
- else
-#endif
- inet_ntop(laddr.in4.sin_family, &laddr.in4.sin_addr, ip, INET6_ADDRSTRLEN);
-
- IdentRequestSocket *isock = NULL;