using irc::sockets::insp_ntoa;
using irc::sockets::insp_aton;
using irc::sockets::OpenTCPSocket;
+using irc::sockets::NonBlocking;
/** Masks to mask off the responses we get from the DNSRequest methods
*/
/* Initialize mastersocket */
int s = OpenTCPSocket(ServerInstance->Config->DNSServer, SOCK_DGRAM);
this->SetFd(s);
+ NonBlocking(s);
/* Have we got a socket and is it nonblocking? */
if (this->GetFd() != -1)
/** Generate pseudo-random number */
unsigned long DNS::PRNG()
{
-#ifndef WIN32
unsigned long val = 0;
timeval n;
serverstats* s = ServerInstance->stats;
val = val + s->statsCollisions ^ s->statsDnsGood - s->statsDnsBad;
val += (s->statsConnects ^ (unsigned long)s->statsSent ^ (unsigned long)s->statsRecv) - ServerInstance->Config->ports.size();
return val;
-#else
- unsigned long val = 0;
- serverstats* s = ServerInstance->stats;
- val = (time(NULL) ^ GetCurrentProcessId() ^ GetCurrentThreadId() ^ (this->currid++)) ^ s->statsAccept + time(NULL);
- val = val + s->statsCollisions ^ s->statsDnsGood - s->statsDnsBad;
- val += (s->statsConnects ^ (unsigned long)s->statsSent ^ (unsigned long)s->statsRecv);
- return val;
-#endif
}