diff options
author | Robin Burchell <robin+git@viroteck.net> | 2012-07-01 21:11:45 +0200 |
---|---|---|
committer | Robin Burchell <robin+git@viroteck.net> | 2012-07-01 21:11:45 +0200 |
commit | 6db09883f29f385b528d3771d3d89c63d81863c8 (patch) | |
tree | cc2e52cca00dd38695f616628be7ddd4957eef8b /src/modules/m_dnsbl.cpp | |
parent | f3bf40e3a1bcb863d1a76983338db6f5bbe3318e (diff) |
Revert "m_dnsbl: switch to OnSetClientIP hook which may be refired."
This reverts commit fbf14cb9ff28ae1b8a6c4b90a18470381afbcc53.
Diffstat (limited to 'src/modules/m_dnsbl.cpp')
-rw-r--r-- | src/modules/m_dnsbl.cpp | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/modules/m_dnsbl.cpp b/src/modules/m_dnsbl.cpp index 6a41c484f..2160b02dc 100644 --- a/src/modules/m_dnsbl.cpp +++ b/src/modules/m_dnsbl.cpp @@ -243,7 +243,7 @@ class ModuleDNSBL : public Module ReadConf(); ServerInstance->Modules->AddService(nameExt); ServerInstance->Modules->AddService(countExt); - Implementation eventlist[] = { I_OnRehash, I_OnSetClientIP, I_OnStats, I_OnSetConnectClass, I_OnCheckReady }; + Implementation eventlist[] = { I_OnRehash, I_OnUserInit, I_OnStats, I_OnSetConnectClass, I_OnCheckReady }; ServerInstance->Modules->Attach(eventlist, this, 5); } @@ -348,24 +348,22 @@ class ModuleDNSBL : public Module ReadConf(); } - void OnSetClientIP(User* user) + void OnUserInit(LocalUser* user) { - LocalUser *luser = IS_LOCAL(user); - - if (!luser || luser->exempt) + if (user->exempt) return; unsigned char a, b, c, d; char reversedipbuf[128]; std::string reversedip; - if (luser->client_sa.sa.sa_family != AF_INET) + if (user->client_sa.sa.sa_family != AF_INET) return; - d = (unsigned char) (luser->client_sa.in4.sin_addr.s_addr >> 24) & 0xFF; - c = (unsigned char) (luser->client_sa.in4.sin_addr.s_addr >> 16) & 0xFF; - b = (unsigned char) (luser->client_sa.in4.sin_addr.s_addr >> 8) & 0xFF; - a = (unsigned char) luser->client_sa.in4.sin_addr.s_addr & 0xFF; + d = (unsigned char) (user->client_sa.in4.sin_addr.s_addr >> 24) & 0xFF; + c = (unsigned char) (user->client_sa.in4.sin_addr.s_addr >> 16) & 0xFF; + b = (unsigned char) (user->client_sa.in4.sin_addr.s_addr >> 8) & 0xFF; + a = (unsigned char) user->client_sa.in4.sin_addr.s_addr & 0xFF; snprintf(reversedipbuf, 128, "%d.%d.%d.%d", d, c, b, a); reversedip = std::string(reversedipbuf); @@ -379,11 +377,11 @@ class ModuleDNSBL : public Module /* now we'd need to fire off lookups for `hostname'. */ bool cached; - DNSBLResolver *r = new DNSBLResolver(this, nameExt, countExt, hostname, luser, DNSBLConfEntries[i], cached); + DNSBLResolver *r = new DNSBLResolver(this, nameExt, countExt, hostname, user, DNSBLConfEntries[i], cached); ServerInstance->AddResolver(r, cached); i++; } - countExt.set(luser, i); + countExt.set(user, i); } ModResult OnSetConnectClass(LocalUser* user, ConnectClass* myclass) |