diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-05-25 21:09:04 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-05-25 21:09:04 +0000 |
commit | f5151d1bbcf5c4c3cff57ff8a8129940ede35d73 (patch) | |
tree | e96e5abece246102e32fba6aa2d298f57b9baa25 | |
parent | d01978194558a422cf886acb114546d0cbe84c76 (diff) |
All the limits were one less than specified in the config, so now we postincrement them all in configreader, this means we can just use them without all that +1 hackery in the code.
This DOES mean that from a protocol perspective the figures look a little odd, but they always did. :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9809 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | include/configreader.h | 13 | ||||
-rw-r--r-- | src/configreader.cpp | 5 |
2 files changed, 18 insertions, 0 deletions
diff --git a/include/configreader.h b/include/configreader.h index 840e227de..2556cf088 100644 --- a/include/configreader.h +++ b/include/configreader.h @@ -248,6 +248,19 @@ class ServerLimits : public Extensible ServerLimits() : NickMax(31), ChanMax(64), MaxModes(20), IdentMax(12), MaxQuit(255), MaxTopic(307), MaxKick(255), MaxGecos(128), MaxAway(200) { } + + void Finalise() + { + NickMax++; + ChanMax++; + MaxModes++; + IdentMax++; + MaxQuit++; + MaxTopic++; + MaxKick++; + MaxGecos++; + MaxAway++; + } }; /** This class holds the bulk of the runtime configuration for the ircd. diff --git a/src/configreader.cpp b/src/configreader.cpp index f572211f3..2320496c8 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -1169,6 +1169,11 @@ void ServerConfig::Read(bool bail, User* user) MultiValues[Index].finish_function(this, MultiValues[Index].tag); } + /* Finalise the limits, increment them all by one so that we can just put assign(str, 0, val) + * rather than assign(str, 0, val + 1) + */ + Limits.Finalise(); + } catch (CoreException &ce) |