GLine* item = new GLine(ServerInstance->Time(), duration, source, reason, ih.first.c_str(), ih.second.c_str());
GLine* item = new GLine(ServerInstance->Time(), duration, source, reason, ih.first.c_str(), ih.second.c_str());
ELine* item = new ELine(ServerInstance->Time(), duration, source, reason, ih.first.c_str(), ih.second.c_str());
ELine* item = new ELine(ServerInstance->Time(), duration, source, reason, ih.first.c_str(), ih.second.c_str());
}
// adds a q:line
bool XLineManager::add_qline(long duration, const char* source, const char* reason, const char* nickname)
{
}
// adds a q:line
bool XLineManager::add_qline(long duration, const char* source, const char* reason, const char* nickname)
{
QLine* item = new QLine(ServerInstance->Time(), duration, source, reason, nickname);
if (duration)
QLine* item = new QLine(ServerInstance->Time(), duration, source, reason, nickname);
if (duration)
}
// adds a z:line
bool XLineManager::add_zline(long duration, const char* source, const char* reason, const char* ipaddr)
{
}
// adds a z:line
bool XLineManager::add_zline(long duration, const char* source, const char* reason, const char* ipaddr)
{
ZLine* item = new ZLine(ServerInstance->Time(), duration, source, reason, ipaddr);
if (duration)
ZLine* item = new ZLine(ServerInstance->Time(), duration, source, reason, ipaddr);
if (duration)
KLine* item = new KLine(ServerInstance->Time(), duration, source, reason, ih.first.c_str(), ih.second.c_str());
KLine* item = new KLine(ServerInstance->Time(), duration, source, reason, ih.first.c_str(), ih.second.c_str());
{
IdentHostPair ih = IdentSplit(hostmask);
for (std::vector<GLine*>::iterator i = glines.begin(); i != glines.end(); i++)
{
if (!strcasecmp(ih.first.c_str(),(*i)->identmask) && !strcasecmp(ih.second.c_str(),(*i)->hostmask))
{
{
IdentHostPair ih = IdentSplit(hostmask);
for (std::vector<GLine*>::iterator i = glines.begin(); i != glines.end(); i++)
{
if (!strcasecmp(ih.first.c_str(),(*i)->identmask) && !strcasecmp(ih.second.c_str(),(*i)->hostmask))
{
{
IdentHostPair ih = IdentSplit(hostmask);
for (std::vector<ELine*>::iterator i = elines.begin(); i != elines.end(); i++)
{
if (!strcasecmp(ih.first.c_str(),(*i)->identmask) && !strcasecmp(ih.second.c_str(),(*i)->hostmask))
{
{
IdentHostPair ih = IdentSplit(hostmask);
for (std::vector<ELine*>::iterator i = elines.begin(); i != elines.end(); i++)
{
if (!strcasecmp(ih.first.c_str(),(*i)->identmask) && !strcasecmp(ih.second.c_str(),(*i)->hostmask))
{
{
for (std::vector<QLine*>::iterator i = qlines.begin(); i != qlines.end(); i++)
{
if (!strcasecmp(nickname,(*i)->nick))
{
{
for (std::vector<QLine*>::iterator i = qlines.begin(); i != qlines.end(); i++)
{
if (!strcasecmp(nickname,(*i)->nick))
{
{
for (std::vector<ZLine*>::iterator i = zlines.begin(); i != zlines.end(); i++)
{
if (!strcasecmp(ipaddr,(*i)->ipaddr))
{
{
for (std::vector<ZLine*>::iterator i = zlines.begin(); i != zlines.end(); i++)
{
if (!strcasecmp(ipaddr,(*i)->ipaddr))
{
{
IdentHostPair ih = IdentSplit(hostmask);
for (std::vector<KLine*>::iterator i = klines.begin(); i != klines.end(); i++)
{
if (!strcasecmp(ih.first.c_str(),(*i)->identmask) && !strcasecmp(ih.second.c_str(),(*i)->hostmask))
{
{
IdentHostPair ih = IdentSplit(hostmask);
for (std::vector<KLine*>::iterator i = klines.begin(); i != klines.end(); i++)
{
if (!strcasecmp(ih.first.c_str(),(*i)->identmask) && !strcasecmp(ih.second.c_str(),(*i)->hostmask))
{
if ((check = matches_gline(u,true)))
{
snprintf(reason,MAXBUF,"G-Lined: %s",check->reason);
if ((check = matches_gline(u,true)))
{
snprintf(reason,MAXBUF,"G-Lined: %s",check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "G-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "G-Lined", reason);
else
if ((check = matches_kline(u,true)))
{
snprintf(reason,MAXBUF,"K-Lined: %s",check->reason);
if ((check = matches_kline(u,true)))
{
snprintf(reason,MAXBUF,"K-Lined: %s",check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "K-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "K-Lined", reason);
else
if ((check = matches_qline(u->nick,true)))
{
snprintf(reason,MAXBUF,"Q-Lined: %s",check->reason);
if ((check = matches_qline(u->nick,true)))
{
snprintf(reason,MAXBUF,"Q-Lined: %s",check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Q-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Q-Lined", reason);
else
if ((check = matches_zline(u->GetIPString(),true)))
{
snprintf(reason,MAXBUF,"Z-Lined: %s",check->reason);
if ((check = matches_zline(u->GetIPString(),true)))
{
snprintf(reason,MAXBUF,"Z-Lined: %s",check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Z-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Z-Lined", reason);
else
if ((check = matches_gline(u)))
{
snprintf(reason,MAXBUF,"G-Lined: %s",check->reason);
if ((check = matches_gline(u)))
{
snprintf(reason,MAXBUF,"G-Lined: %s",check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "G-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "G-Lined", reason);
else
if ((check = matches_kline(u)))
{
snprintf(reason,MAXBUF,"K-Lined: %s",check->reason);
if ((check = matches_kline(u)))
{
snprintf(reason,MAXBUF,"K-Lined: %s",check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "K-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "K-Lined", reason);
else
if ((check = matches_qline(u->nick)))
{
snprintf(reason,MAXBUF,"Q-Lined: %s",check->reason);
if ((check = matches_qline(u->nick)))
{
snprintf(reason,MAXBUF,"Q-Lined: %s",check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Q-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Q-Lined", reason);
else
if ((check = matches_zline(u->GetIPString())))
{
snprintf(reason,MAXBUF,"Z-Lined: %s", check->reason);
if ((check = matches_zline(u->GetIPString())))
{
snprintf(reason,MAXBUF,"Z-Lined: %s", check->reason);
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Z-Lined", reason);
else
if (ServerInstance->Config->HideBans)
ServerInstance->GlobalCulls.AddItem(u, "Z-Lined", reason);
else