]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/configreader.h
Merge pull request #1018 from SaberUK/insp20+hidekills
[user/henk/code/inspircd.git] / include / configreader.h
index e360d391735ed2775ad208388aa66ee8e9d941f5..b01a979a7c2703384bb17155e52688370af0d3df 100644 (file)
@@ -64,8 +64,7 @@ class CoreExport ConfigTag : public refcountbase
        inline const std::vector<KeyVal>& getItems() const { return items; }
 
        /** Create a new ConfigTag, giving access to the private KeyVal item list */
-       static ConfigTag* create(const std::string& Tag, const std::string& file, int line,
-               std::vector<KeyVal>*&items);
+       static ConfigTag* create(const std::string& Tag, const std::string& file, int line, std::vector<KeyVal>*& Items);
  private:
        ConfigTag(const std::string& Tag, const std::string& file, int line);
 };
@@ -102,21 +101,6 @@ class ServerLimits
        ServerLimits() : NickMax(31), ChanMax(64), MaxModes(20), IdentMax(12), MaxQuit(255), MaxTopic(307), MaxKick(255), MaxGecos(128), MaxAway(200)
        {
        }
-
-       /** Finalises the settings by adding one. This allows for them to be used as-is
-        * without a 'value+1' when using the std::string assignment methods etc.
-        */
-       void Finalise()
-       {
-               NickMax++;
-               ChanMax++;
-               IdentMax++;
-               MaxQuit++;
-               MaxTopic++;
-               MaxKick++;
-               MaxGecos++;
-               MaxAway++;
-       }
 };
 
 struct CommandLineConf
@@ -213,6 +197,9 @@ class CoreExport ServerConfig
 
        ConfigTagList ConfTags(const std::string& tag);
 
+       /** An empty configuration tag. */
+       ConfigTag* EmptyTag;
+
        /** Error stream, contains error output from any failed configuration parsing.
         */
        std::stringstream errstr;
@@ -543,9 +530,11 @@ class CoreExport ServerConfig
         */
        ServerConfig();
 
+       ~ServerConfig();
+
        /** Get server ID as string with required leading zeroes
         */
-       std::string GetSID();
+       const std::string& GetSID();
 
        /** Update the 005 vector
         */
@@ -568,10 +557,6 @@ class CoreExport ServerConfig
 
        void Fill();
 
-       /** Parses color codes from string values to actual color codes
-        */
-       void ProcessColors(ConfigFileCache::iterator &file);
-
        /** Returns true if the given string starts with a windows drive letter
         */
        bool StartsWithWindowsDriveLetter(const std::string &path);
@@ -598,6 +583,10 @@ class CoreExport ServerConfig
         */
        bool NoSnoticeStack;
 
+       /** If true, a "Welcome to <networkname>!" NOTICE will be sent to
+        * connecting users
+        */
+       bool WelcomeNotice;
 };
 
 /** The background thread for config reading, so that reading from executable includes