+ return 0;
+ }
+
+ floodsettings *f;
+ if (dest->GetExt("flood", f))
+ {
+ f->addmessage(user);
+ if (f->shouldkick(user))
+ {
+ /* Youre outttta here! */
+ f->clear(user);
+ if (f->ban)
+ {
+ std::vector<std::string> parameters;
+ parameters.push_back(dest->name);
+ parameters.push_back("+b");
+ parameters.push_back(user->MakeWildHost());
+ ServerInstance->SendMode(parameters, ServerInstance->FakeClient);
+
+ ServerInstance->PI->SendModeStr(dest->name, std::string("+b ") + user->MakeWildHost());
+ }
+
+ char kickmessage[MAXBUF];
+ snprintf(kickmessage, MAXBUF, "Channel flood triggered (limit is %d lines in %d secs)", f->lines, f->secs);
+
+ if (!dest->ServerKickUser(user, kickmessage))
+ {
+ delete dest;
+ }
+
+ return 1;
+ }