]> jfr.im git - solanum.git/blobdiff - include/s_conf.h
ircd: integrate ircd side of wsockd support
[solanum.git] / include / s_conf.h
index 2587a42b3f90648488bab3745ea85547a12498e7..17157375b5d9257bb54ca2714609dbe686b868af 100644 (file)
@@ -20,8 +20,6 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
  *  USA
- *
- *  $Id: s_conf.h 3550 2007-08-09 06:47:26Z nenolod $
  */
 
 #ifndef INCLUDED_s_conf_h
@@ -35,7 +33,6 @@
 #include "ircd_defs.h"
 #include "class.h"
 #include "client.h"
-#include "common.h"
 
 struct Client;
 struct DNSReply;
@@ -110,8 +107,10 @@ struct ConfItem
 #define CONF_FLAGS_EXEMPTSHIDE         0x00010000
 #define CONF_FLAGS_EXEMPTJUPE          0x00020000      /* exempt from resv generating warnings */
 #define CONF_FLAGS_NEED_SASL           0x00040000
+#define CONF_FLAGS_EXTEND_CHANS                0x00080000
 #define CONF_FLAGS_ENCRYPTED            0x00200000
 #define CONF_FLAGS_EXEMPTDNSBL         0x04000000
+#define CONF_FLAGS_EXEMPTPROXY         0x08000000
 
 
 /* Macros for struct ConfItem */
@@ -132,6 +131,8 @@ struct ConfItem
 #define IsConfEncrypted(x)      ((x)->flags & CONF_FLAGS_ENCRYPTED)
 #define IsNeedSasl(x)          ((x)->flags & CONF_FLAGS_NEED_SASL)
 #define IsConfExemptDNSBL(x)   ((x)->flags & CONF_FLAGS_EXEMPTDNSBL)
+#define IsConfExemptProxy(x)   ((x)->flags & CONF_FLAGS_EXEMPTPROXY)
+#define IsConfExtendChans(x)   ((x)->flags & CONF_FLAGS_EXTEND_CHANS)
 #define IsConfSSLNeeded(x)     ((x)->flags & CONF_FLAGS_NEED_SSL)
 
 /* flag definitions for opers now in client.h */
@@ -141,8 +142,6 @@ struct config_file_entry
        const char *dpath;      /* DPATH if set from command line */
        const char *configfile;
 
-       char *egdpool_path;
-
        char *default_operstring;
        char *default_adminstring;
        char *servicestring;
@@ -150,7 +149,9 @@ struct config_file_entry
 
        char *identifyservice;
        char *identifycommand;
-       
+
+       char *sasl_service;
+
        char *fname_userlog;
        char *fname_fuserlog;
        char *fname_operlog;
@@ -206,7 +207,6 @@ struct config_file_entry
        int min_nonwildcard_simple;
        int default_floodcount;
        int default_ident_timeout;
-       int use_egd;
        int ping_cookie;
        int tkline_expire_notices;
        int use_whois_actually;
@@ -235,6 +235,9 @@ struct config_file_entry
        int client_flood_message_num;
 
        unsigned int nicklen;
+       int certfp_method;
+
+       int hide_opers_in_whois;
 };
 
 struct config_channel_entry
@@ -248,6 +251,7 @@ struct config_channel_entry
        int max_bans;
        int max_bans_large;
        int max_chans_per_user;
+       int max_chans_per_user_large;
        int no_create_on_split;
        int no_join_on_split;
        int default_split_server_count;
@@ -258,6 +262,9 @@ struct config_channel_entry
        int resv_forcepart;
        int channel_target_change;
        int disable_local_channels;
+       unsigned int autochanmodes;
+       int displayed_usercount;
+       int strip_topic_colors;
 };
 
 struct config_server_hide
@@ -274,7 +281,6 @@ struct server_info
        char sid[4];
        char *description;
        char *network_name;
-       char *network_desc;
        int hub;
        struct sockaddr_in ip;
        int default_max_clients;
@@ -289,7 +295,9 @@ struct server_info
        char *ssl_ca_cert;
        char *ssl_cert;
        char *ssl_dh_params;
+       char *ssl_cipher_list;
        int ssld_count;
+       int wsockd_count;
 };
 
 struct admin_info
@@ -339,10 +347,10 @@ extern struct ConfItem *make_conf(void);
 extern void free_conf(struct ConfItem *);
 
 extern rb_dlink_node *find_prop_ban(unsigned int status, const char *user, const char *host);
-extern void deactivate_conf(struct ConfItem *, rb_dlink_node *);
+extern void deactivate_conf(struct ConfItem *, rb_dlink_node *, time_t);
 extern void replace_old_ban(struct ConfItem *);
 
-extern void read_conf_files(int cold);
+extern void read_conf_files(bool cold);
 
 extern int attach_conf(struct Client *, struct ConfItem *);
 extern int check_client(struct Client *client_p, struct Client *source_p, const char *);
@@ -352,7 +360,7 @@ extern int detach_conf(struct Client *);
 extern struct ConfItem *find_tkline(const char *, const char *, struct sockaddr *);
 extern char *show_iline_prefix(struct Client *, struct ConfItem *, char *);
 extern void get_printable_conf(struct ConfItem *,
-                              char **, char **, char **, char **, int *, char **);
+                              char **, char **, const char **, char **, int *, char **);
 extern char *get_user_ban_reason(struct ConfItem *aconf);
 extern void get_printable_kline(struct Client *, struct ConfItem *,
                                char **, char **, char **, char **);
@@ -367,8 +375,8 @@ extern void add_temp_dline(struct ConfItem *);
 extern void report_temp_klines(struct Client *);
 extern void show_temp_klines(struct Client *, rb_dlink_list *);
 
-extern int rehash(int);
-extern void rehash_bans(int);
+extern bool rehash(bool);
+extern void rehash_bans(void);
 
 extern int conf_add_server(struct ConfItem *, int);
 extern void conf_add_class_to_conf(struct ConfItem *);
@@ -383,11 +391,11 @@ extern int yylex(void);
 
 extern unsigned long cidr_to_bitmask[];
 
-extern char conffilebuf[IRCD_BUFSIZE + 1];
+extern char conffilebuf[BUFSIZE + 1];
 extern int lineno;
 
 #define NOT_AUTHORISED  (-1)
-#define SOCKET_ERROR    (-2)
+#define I_SOCKET_ERROR  (-2)
 #define I_LINE_FULL     (-3)
 #define BANNED_CLIENT   (-4)
 #define TOO_MANY_LOCAL (-6)