- std::string ban = std::string("*@") + them->GetIPString();
- if (show)
- ServerInstance->XLines->apply_lines(APPLY_KLINES);
- show = ServerInstance->XLines->add_kline(ConfEntry->duration, ServerInstance->Config->ServerName, reason.c_str(), ban.c_str());
- FOREACH_MOD(I_OnAddKLine,OnAddKLine(ConfEntry->duration, NULL, reason, ban));
+ KLine* kl = new KLine(ServerInstance, ServerInstance->Time(), ConfEntry->duration, ServerInstance->Config->ServerName, reason.c_str(),
+ "*", them->GetIPString());
+ if (ServerInstance->XLines->AddLine(kl,NULL))
+ {
+ ServerInstance->SNO->WriteToSnoMask('x',"m_dnsbl added K:line on *@%s to expire on %s (%s).",
+ them->GetIPString(), ServerInstance->TimeString(kl->expiry).c_str(), reason.c_str());
+ ServerInstance->XLines->ApplyLines();
+ }
+ else
+ delete kl;