summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-05-25 21:09:04 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-05-25 21:09:04 +0000
commitf5151d1bbcf5c4c3cff57ff8a8129940ede35d73 (patch)
treee96e5abece246102e32fba6aa2d298f57b9baa25
parentd01978194558a422cf886acb114546d0cbe84c76 (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.h13
-rw-r--r--src/configreader.cpp5
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)