- char reason[MAXBUF];
-
- if ((!glines.size()) && (!klines.size()) && (!zlines.size()) && (!qlines.size()) &&
- (!pglines.size()) && (!pklines.size()) && (!pzlines.size()) && (!pqlines.size()))
- return;
-
- CullList* Goners = new CullList(ServerInstance);
- XLine* check = NULL;
- for (std::vector<userrec*>::const_iterator u2 = ServerInstance->local_users.begin(); u2 != ServerInstance->local_users.end(); u2++)
- {
- userrec* u = (userrec*)(*u2);
-
- if (elines.size() || pelines.size())
- {
- // ignore people matching exempts
- if (matches_exception(u))
- continue;
- }
- if ((What & APPLY_GLINES) && (glines.size() || pglines.size()))
- {
- if ((check = matches_gline(u)))
- {
- snprintf(reason,MAXBUF,"G-Lined: %s",check->reason);
- Goners->AddItem(u,reason);
- }
- }
- if ((What & APPLY_KLINES) && (klines.size() || pklines.size()))
- {
- if ((check = matches_kline(u)))
- {
- snprintf(reason,MAXBUF,"K-Lined: %s",check->reason);
- Goners->AddItem(u,reason);
- }
- }
- if ((What & APPLY_QLINES) && (qlines.size() || pqlines.size()))
- {
- if ((check = matches_qline(u->nick)))
- {
- snprintf(reason,MAXBUF,"Q-Lined: %s",check->reason);
- Goners->AddItem(u,reason);
- }
- }
- if ((What & APPLY_ZLINES) && (zlines.size() || pzlines.size()))
- {
- if ((check = matches_zline(u->GetIPString())))
- {
- snprintf(reason,MAXBUF,"Z-Lined: %s",check->reason);
- Goners->AddItem(u,reason);
- }
- }
- }