From: brain Date: Sun, 25 May 2008 18:00:55 +0000 (+0000) Subject: Add parsing of tag and finish documenting it, make all the values match... X-Git-Tag: v2.0.23~3092 X-Git-Url: https://git.netwichtig.de/gitweb/?a=commitdiff_plain;h=d01978194558a422cf886acb114546d0cbe84c76;p=user%2Fhenk%2Fcode%2Finspircd.git Add parsing of tag and finish documenting it, make all the values match sensibly by starting them all 'max' rather than some starting with it, some ending with it... git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9808 e03df62e-2008-0410-955e-edbf42e46eb7 --- diff --git a/docs/inspircd.conf.example b/docs/inspircd.conf.example index 8e7ebdb00..c925971d5 100644 --- a/docs/inspircd.conf.example +++ b/docs/inspircd.conf.example @@ -1052,11 +1052,11 @@ # # # Values here should be self explanitory: # # # -# nickmax - The maximum length of a nickname # -# chanmax - The maximum length of a channel name # -# modemax - The maximum number of parameterized mode changes # +# maxnick - The maximum length of a nickname # +# maxchan - The maximum length of a channel name # +# maxmodes - The maximum number of parameterized mode changes # # per line # -# identmax - The maximum length of an ident/username value # +# maxident - The maximum length of an ident/username value # # maxquit - The maximum length of a quit message # # maxtopic - The maximum length of a channel topic # # maxkick - The maximum length of a kick message # @@ -1064,10 +1064,10 @@ # maxaway - The maximum length of an away message # # # - ValueContainerChar; */ typedef ValueContainer ValueContainerInt; +typedef ValueContainer ValueContainerST; + /** A set of ValueItems used by multi-value validator functions */ typedef std::deque ValueList; diff --git a/src/configreader.cpp b/src/configreader.cpp index 76aae190b..f572211f3 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -844,9 +844,19 @@ void ServerConfig::Read(bool bail, User* user) {"die", "value", "", new ValueContainerChar (this->DieValue), DT_CHARPTR, NoValidation}, {"channels", "users", "20", new ValueContainerUInt (&this->MaxChans), DT_INTEGER, NoValidation}, {"channels", "opers", "60", new ValueContainerUInt (&this->OperMaxChans), DT_INTEGER, NoValidation}, + {"limits", "maxnick", "32", new ValueContainerST (&this->Limits.NickMax), DT_INTEGER, NoValidation}, + {"limits", "maxchan", "64", new ValueContainerST (&this->Limits.ChanMax), DT_INTEGER, NoValidation}, + {"limits", "maxmodes", "20", new ValueContainerST (&this->Limits.MaxModes), DT_INTEGER, NoValidation}, + {"limits", "maxident", "11", new ValueContainerST (&this->Limits.IdentMax), DT_INTEGER, NoValidation}, + {"limits", "maxquit", "255", new ValueContainerST (&this->Limits.MaxQuit), DT_INTEGER, NoValidation}, + {"limits", "maxtopic", "307", new ValueContainerST (&this->Limits.MaxTopic), DT_INTEGER, NoValidation}, + {"limits", "maxkick", "255", new ValueContainerST (&this->Limits.MaxKick), DT_INTEGER, NoValidation}, + {"limits", "maxgecos", "128", new ValueContainerST (&this->Limits.MaxGecos), DT_INTEGER, NoValidation}, + {"limits", "maxaway", "200", new ValueContainerST (&this->Limits.MaxAway), DT_INTEGER, NoValidation}, {NULL, NULL, NULL, NULL, DT_NOTHING, NoValidation} }; + /* These tags can occur multiple times, and therefore they have special code to read them * which is different to the code for reading the singular tags listed above. */