+ User* u = (User*)(*u2);
+
+ if (elines.size() || pelines.size())
+ if (matches_exception(u))
+ continue;
+
+ if ((What & APPLY_GLINES) && pglines.size())
+ {
+ if ((check = matches_gline(u,true)))
+ {
+ snprintf(reason,MAXBUF,"G-Lined: %s",check->reason);
+ if (*ServerInstance->Config->MoronBanner)
+ u->WriteServ("NOTICE %s :*** %s", u->nick, ServerInstance->Config->MoronBanner);
+ if (ServerInstance->Config->HideBans)
+ User::QuitUser(ServerInstance, u, "G-Lined", reason);
+ else
+ User::QuitUser(ServerInstance, u, reason);
+ }
+ }
+
+ if ((What & APPLY_KLINES) && pklines.size())
+ {
+ if ((check = matches_kline(u,true)))
+ {
+ snprintf(reason,MAXBUF,"K-Lined: %s",check->reason);
+ if (*ServerInstance->Config->MoronBanner)
+ u->WriteServ("NOTICE %s :*** %s", u->nick, ServerInstance->Config->MoronBanner);
+ if (ServerInstance->Config->HideBans)
+ User::QuitUser(ServerInstance, u, "K-Lined", reason);
+ else
+ User::QuitUser(ServerInstance, u, reason);
+ }
+ }
+
+ if ((What & APPLY_QLINES) && pqlines.size())
+ {
+ if ((check = matches_qline(u->nick,true)))
+ {
+ snprintf(reason,MAXBUF,"Q-Lined: %s",check->reason);
+ if (*ServerInstance->Config->MoronBanner)
+ u->WriteServ("NOTICE %s :*** %s", u->nick, ServerInstance->Config->MoronBanner);
+ if (ServerInstance->Config->HideBans)
+ User::QuitUser(ServerInstance, u, "Q-Lined", reason);
+ else
+ User::QuitUser(ServerInstance, u, reason);
+ }
+ }
+
+ if ((What & APPLY_ZLINES) && pzlines.size())