]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/inspircd_io.h
Decide that it wasn't quite appropriate :(
[user/henk/code/inspircd.git] / include / inspircd_io.h
index 268ad09bb3457db716a7ef71880eb83a33d129d3..711488c36b8de47c3a6c4c66051a70b24b579d83 100644 (file)
@@ -2,7 +2,7 @@
  *       | Inspire Internet Relay Chat Daemon |
  *       +------------------------------------+
  *
- *  Inspire is copyright (C) 2002-2005 ChatSpike-Dev.
+ *  InspIRCd is copyright (C) 2002-2006 ChatSpike-Dev.
  *                       E-mail:
  *                <brain@chatspike.net>
  *               <Craig@chatspike.net>
@@ -61,6 +61,10 @@ class ServerConfig : public classbase
         */
        std::string ConfProcess(char* buffer, long linenumber, std::stringstream* errorstream, bool &error, std::string filename);
 
+       /** Check that there is only one of each configuration item
+        */
+       bool CheckOnce(char* tag, bool bail, userrec* user);
+
   public:
 
        /** Holds the server name of the local server
@@ -138,6 +142,10 @@ class ServerConfig : public classbase
         */
         char ModPath[1024];
 
+       /** The temporary directory where modules are copied
+        */
+       char TempDir[1024];
+
        /** The full pathname to the executable, as
         * given in argv[0] when the program starts.
         */
@@ -193,6 +201,11 @@ class ServerConfig : public classbase
         */
         unsigned int SoftLimit;
 
+       /** Maximum number of targets for a multi target command
+        * such as PRIVMSG or KICK
+        */
+       unsigned int MaxTargets;
+
        /** The maximum number of /WHO results allowed
         * in any single /WHO command.
         */
@@ -211,6 +224,14 @@ class ServerConfig : public classbase
         */
         int DieDelay;
 
+       /** True if we're going to hide netsplits as *.net *.split for non-opers
+        */
+       bool HideSplits;
+
+       /** Set to a non-empty string to obfuscate the server name of users in WHOIS
+        */
+       char HideWhoisServer[MAXBUF];
+
        /** A list of IP addresses the server is listening
         * on.
         */
@@ -263,6 +284,25 @@ class ServerConfig : public classbase
         */
        std::map<int,Module*> IOHookModule;
 
+       /** The 005 tokens of this server (ISUPPORT)
+        * populated/repopulated upon loading or unloading
+        * modules.
+        */
+       std::string data005;
+
+       /** STATS characters in this list are available
+        * only to operators.
+        */
+       char OperOnlyStats[MAXBUF];
+
+       /** The path and filename of the ircd.log file
+        */
+       std::string logpath;
+
+       /** Custom version string, which if defined can replace the system info in VERSION.
+        */
+       char CustomVersion[MAXBUF];
+
        ServerConfig();
 
        /** Clears the include stack in preperation for
@@ -297,5 +337,6 @@ int OpenTCPSocket (void);
 int BindSocket (int sockfd, struct sockaddr_in client, struct sockaddr_in server, int port, char* addr);
 void WritePID(std::string filename);
 int BindPorts();
+char* CleanFilename(char* name);
 
 #endif