]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/conf.h
Implement new configuration option "AllowedChannelTypes"
[ngircd-alex.git] / src / ngircd / conf.h
index 8e66c07c3c671f3ecf119fc50f6fc313cdaa5307..93d6785f2adb9499eb3d000e7fa45689c62d950a 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * ngIRCd -- The Next Generation IRC Daemon
- * Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors.
+ * Copyright (c)2001-2013 Alexander Barton (alex@barton.de) and Contributors.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -62,7 +62,7 @@ typedef struct _Conf_Server
 #ifdef SSL_SUPPORT
        bool SSLConnect;                /**< Establish connection using SSL? */
 #endif
-       char svs_mask[CLIENT_ID_LEN];   /**< Mask of nick names that should be
+       char svs_mask[CLIENT_ID_LEN];   /**< Mask of nicknames that should be
                                             treated and counted as services */
 } CONF_SERVER;
 
@@ -111,6 +111,9 @@ GLOBAL char Conf_ServerAdminMail[CLIENT_INFO_LEN];
 /** Message of the day (MOTD) of this server */
 GLOBAL array Conf_Motd;
 
+/** Help text of this server */
+GLOBAL array Conf_Helptext;
+
 /** Array of ports this server should listen on */
 GLOBAL array Conf_ListenPorts;
 
@@ -145,12 +148,15 @@ GLOBAL CONF_SERVER Conf_Server[MAX_SERVERS];
 /** Array of pre-defined channels */
 GLOBAL array Conf_Channels;
 
-/** Flag indicating if only pre-defined channels are allowed (true) or not */
-GLOBAL bool Conf_PredefChannelsOnly;
+/** String containing all locally allowed channel prefixes for new channels */
+GLOBAL char Conf_AllowedChannelTypes[8];
 
 /** Flag indicating if IRC operators are allowed to always use MODE (true) */
 GLOBAL bool Conf_OperCanMode;
 
+/** Flag indicating if IRC operators get AutoOp in persistent (+P) channels */
+GLOBAL bool Conf_OperChanPAutoOp;
+
 /**
  * If true, mask channel MODE commands of IRC operators to the server.
  * Background: ircd2 will ignore channel MODE commands if an IRC operator
@@ -172,7 +178,7 @@ GLOBAL char Conf_CloakHostModeX[CLIENT_ID_LEN];
 /** Salt for hostname hash for cloaked hostnames */
 GLOBAL char Conf_CloakHostSalt[CLIENT_ID_LEN];
 
-/** Use nick name as user name? */
+/** Use nickname as user name? */
 GLOBAL bool Conf_CloakUserToNick;
 
 /** Enable all DNS functions? */
@@ -205,8 +211,11 @@ GLOBAL bool Conf_ConnectIPv6;
 /** Try to connect to remote systems using the IPv4 protocol (true) */
 GLOBAL bool Conf_ConnectIPv4;
 
+/** Idle timout (seconds), after which the daemon should exit */
+GLOBAL int Conf_IdleTimeout;
+
 /** Maximum number of simultaneous connections to this server */
-GLOBAL long Conf_MaxConnections;
+GLOBAL int Conf_MaxConnections;
 
 /** Maximum number of channels a user can join */
 GLOBAL int Conf_MaxJoins;
@@ -214,9 +223,12 @@ GLOBAL int Conf_MaxJoins;
 /** Maximum number of connections per IP address */
 GLOBAL int Conf_MaxConnectionsIP;
 
-/** Maximum length of a nick name */
+/** Maximum length of a nickname */
 GLOBAL unsigned int Conf_MaxNickLength;
 
+/** Maximum number of channels returned to /list */
+GLOBAL int Conf_MaxListSize;
+
 #ifndef STRICT_RFC
 
 /** Require "AUTH PING-PONG" on login */
@@ -236,7 +248,7 @@ GLOBAL bool Conf_Rehash PARAMS((void));
 GLOBAL int Conf_Test PARAMS((void));
 
 GLOBAL void Conf_UnsetServer PARAMS(( CONN_ID Idx ));
-GLOBAL void Conf_SetServer PARAMS(( int ConfServer, CONN_ID Idx ));
+GLOBAL bool Conf_SetServer PARAMS(( int ConfServer, CONN_ID Idx ));
 GLOBAL int Conf_GetServer PARAMS(( CONN_ID Idx ));
 
 GLOBAL bool Conf_EnableServer PARAMS(( const char *Name, UINT16 Port ));
@@ -247,6 +259,10 @@ GLOBAL bool Conf_AddServer PARAMS(( const char *Name, UINT16 Port, const char *H
 GLOBAL bool Conf_NickIsService PARAMS((int ConfServer, const char *Nick));
 GLOBAL bool Conf_NickIsBlocked PARAMS((const char *Nick));
 
+#ifdef SSL_SUPPORT
+GLOBAL bool Conf_SSLInUse PARAMS((void));
+#endif
+
 /* Password required by WEBIRC command */
 GLOBAL char Conf_WebircPwd[CLIENT_PASS_LEN];