"*", them->GetIPString());
if (ServerInstance->XLines->AddLine(kl,NULL))
{
- std::string timestr = InspIRCd::TimeString(kl->expiry);
- ServerInstance->SNO->WriteGlobalSno('x', "K-line added due to DNSBL match on *@%s to expire on %s: %s",
- them->GetIPString().c_str(), timestr.c_str(), reason.c_str());
+ ServerInstance->SNO->WriteGlobalSno('x', "K-line added due to DNSBL match on *@%s to expire in %s (on %s): %s",
+ them->GetIPString().c_str(), InspIRCd::DurationString(kl->duration).c_str(),
+ InspIRCd::TimeString(kl->expiry).c_str(), reason.c_str());
ServerInstance->XLines->ApplyLines();
}
else
"*", them->GetIPString());
if (ServerInstance->XLines->AddLine(gl,NULL))
{
- std::string timestr = InspIRCd::TimeString(gl->expiry);
- ServerInstance->SNO->WriteGlobalSno('x', "G-line added due to DNSBL match on *@%s to expire on %s: %s",
- them->GetIPString().c_str(), timestr.c_str(), reason.c_str());
+ ServerInstance->SNO->WriteGlobalSno('x', "G-line added due to DNSBL match on *@%s to expire in %s (on %s): %s",
+ them->GetIPString().c_str(), InspIRCd::DurationString(gl->duration).c_str(),
+ InspIRCd::TimeString(gl->expiry).c_str(), reason.c_str());
ServerInstance->XLines->ApplyLines();
}
else
them->GetIPString());
if (ServerInstance->XLines->AddLine(zl,NULL))
{
- std::string timestr = InspIRCd::TimeString(zl->expiry);
- ServerInstance->SNO->WriteGlobalSno('x', "Z-line added due to DNSBL match on %s to expire on %s: %s",
- them->GetIPString().c_str(), timestr.c_str(), reason.c_str());
+ ServerInstance->SNO->WriteGlobalSno('x', "Z-line added due to DNSBL match on %s to expire in %s (on %s): %s",
+ them->GetIPString().c_str(), InspIRCd::DurationString(zl->duration).c_str(),
+ InspIRCd::TimeString(zl->expiry).c_str(), reason.c_str());
ServerInstance->XLines->ApplyLines();
}
else
std::string dnsbl;
if (!myclass->config->readString("dnsbl", dnsbl))
return MOD_RES_PASSTHRU;
+
std::string* match = nameExt.get(user);
- std::string myname = match ? *match : "";
- if (dnsbl == myname)
+ if (!match)
+ return MOD_RES_PASSTHRU;
+
+ if (InspIRCd::Match(*match, dnsbl))
return MOD_RES_PASSTHRU;
+
return MOD_RES_DENY;
}