/*
* InspIRCd -- Internet Relay Chat Daemon
*
+ * Copyright (C) 2013, 2016-2019 Sadie Powell <sadie@witchery.services>
+ * Copyright (C) 2012, 2019 Robby <robby@chatbelgie.be>
+ * Copyright (C) 2012, 2014 Attila Molnar <attilamolnar@hush.com>
+ * Copyright (C) 2010 Craig Edwards <brain@inspircd.org>
* Copyright (C) 2009 Daniel De Graaf <danieldg@inspircd.org>
- * Copyright (C) 2007, 2009 Robin Burchell <robin+git@viroteck.net>
+ * Copyright (C) 2007-2009 Robin Burchell <robin+git@viroteck.net>
*
* This file is part of InspIRCd. InspIRCd is free software: you can
* redistribute it and/or modify it under the terms of the GNU General Public
bool shouldlock()
{
- /* XXX HACK: using counter + 1 here now to allow the counter to only be incremented
- * on successful nick changes; this will be checked before the counter is
- * incremented.
- */
return ((ServerInstance->Time() <= reset) && (counter == this->nicks));
}
NickFlood(Module* Creator)
: ParamMode<NickFlood, SimpleExtItem<nickfloodsettings> >(Creator, "nickflood", 'F')
{
+ syntax = "<nick-changes>:<seconds>";
}
ModeAction OnSet(User* source, Channel* channel, std::string& parameter) CXX11_OVERRIDE
}
/* Set up the flood parameters for this channel */
- unsigned int nnicks = ConvToInt(parameter.substr(0, colon));
- unsigned int nsecs = ConvToInt(parameter.substr(colon+1));
+ unsigned int nnicks = ConvToNum<unsigned int>(parameter.substr(0, colon));
+ unsigned int nsecs = ConvToNum<unsigned int>(parameter.substr(colon+1));
if ((nnicks<1) || (nsecs<1))
{
Version GetVersion() CXX11_OVERRIDE
{
- return Version("Channel mode F - nick flood protection", VF_VENDOR);
+ return Version("Adds channel mode F (nickflood) which helps protect against spammers which mass-change nicknames.", VF_VENDOR);
}
};