/* $ModDesc: Provides support for easily creating listmodes, stores the time set, the user, and a parameter. */
+/* Updated to use the <banlist> config tag if it exists */
/* Written by Om <omster@gmail.com>, December 2005. */
/* Based on code previously written by Om - April 2005 */
/* Originally based on m_chanprotect and m_silence */
unsigned int limit;
};
-// Just defining the type we use for the excpetion list here...
+// Just defining the type we use for the exception list here...
typedef std::vector<ListItem> modelist;
typedef std::vector<ListLimit> limitlist;
class ListModeBaseModule : public Module
{
protected:
- int maxlist;
char mode;
std::string infokey;
std::string listnumeric;
}
}
+ unsigned int maxsize = 0;
+
for(limitlist::iterator it = chanlimits.begin(); it != chanlimits.end(); it++)
{
if(Srv->MatchText(chan->name, it->mask))
{
// We have a pattern matching the channel...
- if(el->size() < it->limit)
+ maxsize = el->size();
+ if(maxsize < it->limit)
{
// And now add the mask onto the list...
ListItem e;
// List is full
WriteServ(user->fd, "478 %s %s %s :Channel ban/ignore list is full", user->nick, chan->name, params[0].c_str());
- log(DEBUG, "m_exceptionbase.so: %s tried to set mask %s on %s but the list is full (max %d)", user->nick, params[0].c_str(), chan->name, maxlist);
+ log(DEBUG, "m_exceptionbase.so: %s tried to set mask %s on %s but the list is full (max %d)", user->nick, params[0].c_str(), chan->name, maxsize);
return -1;
}
else