X-Git-Url: https://jfr.im/git/irc/rqf/shadowircd.git/blobdiff_plain/212380e3f42f585dc1ea927402252eb943f91f7b..3e32e4d686afacc069505d9c23ae7a9039519745:/include/s_newconf.h diff --git a/include/s_newconf.h b/include/s_newconf.h index 6179535..3567098 100644 --- a/include/s_newconf.h +++ b/include/s_newconf.h @@ -36,7 +36,6 @@ #define INCLUDED_s_newconf_h #include "setup.h" -#include "tools.h" #ifdef HAVE_LIBCRYPTO #include @@ -44,17 +43,17 @@ struct ConfItem; -extern dlink_list cluster_conf_list; -extern dlink_list shared_conf_list; -extern dlink_list oper_conf_list; -extern dlink_list hubleaf_conf_list; -extern dlink_list server_conf_list; -extern dlink_list xline_conf_list; -extern dlink_list resv_conf_list; -extern dlink_list nd_list; -extern dlink_list tgchange_list; +extern rb_dlink_list cluster_conf_list; +extern rb_dlink_list shared_conf_list; +extern rb_dlink_list oper_conf_list; +extern rb_dlink_list hubleaf_conf_list; +extern rb_dlink_list server_conf_list; +extern rb_dlink_list xline_conf_list; +extern rb_dlink_list resv_conf_list; +extern rb_dlink_list nd_list; +extern rb_dlink_list tgchange_list; -struct _patricia_tree_t *tgchange_tree; +struct _rb_patricia_tree_t *tgchange_tree; extern void init_s_newconf(void); extern void clear_s_newconf(void); @@ -67,8 +66,8 @@ typedef struct { char *ip; time_t expiry; - patricia_node_t *pnode; - dlink_node node; + rb_patricia_node_t *pnode; + rb_dlink_node node; } tgchange; void add_tgchange(const char *host); @@ -81,7 +80,7 @@ struct remote_conf char *host; char *server; int flags; - dlink_node node; + rb_dlink_node node; }; /* flags used in shared/cluster */ @@ -92,7 +91,7 @@ struct remote_conf #define SHARED_TXLINE 0x0010 #define SHARED_PXLINE 0x0020 #define SHARED_UNXLINE 0x0040 -#define SHARED_TRESV 0x0800 +#define SHARED_TRESV 0x0080 #define SHARED_PRESV 0x0100 #define SHARED_UNRESV 0x0200 #define SHARED_REHASH 0x0400 @@ -152,14 +151,14 @@ extern void cluster_generic(struct Client *, const char *, int cltype, #define OPER_INVIS 0x08000 #define OPER_SPY 0x10000 #define OPER_REMOTEBAN 0x20000 -/* 0x40000 */ -/* 0x80000 and above are in client.h */ +#define OPER_MASSNOTICE 0x40000 +/* 0x400000 and above are in client.h */ #define OPER_FLAGS (OPER_KLINE|OPER_UNKLINE|OPER_LOCKILL|OPER_GLOBKILL|\ OPER_REMOTE|OPER_GLINE|OPER_XLINE|OPER_RESV|\ OPER_NICKS|OPER_REHASH|OPER_DIE|OPER_ADMIN|\ OPER_HADMIN|OPER_OPERWALL|OPER_INVIS|OPER_SPY|\ - OPER_REMOTEBAN) + OPER_REMOTEBAN|OPER_MASSNOTICE) #define IsOperConfEncrypted(x) ((x)->flags & OPER_ENCRYPTED) @@ -171,6 +170,7 @@ extern void cluster_generic(struct Client *, const char *, int cltype, #define IsOperN(x) ((x)->flags2 & OPER_NICKS) #define IsOperK(x) ((x)->flags2 & OPER_KLINE) #define IsOperXline(x) ((x)->flags2 & OPER_XLINE) +#define IsOperResv(x) ((x)->flags2 & OPER_RESV) #define IsOperDie(x) ((x)->flags2 & OPER_DIE) #define IsOperRehash(x) ((x)->flags2 & OPER_REHASH) #define IsOperHiddenAdmin(x) ((x)->flags2 & OPER_HADMIN) @@ -180,6 +180,7 @@ extern void cluster_generic(struct Client *, const char *, int cltype, #define IsOperSpy(x) ((x)->flags2 & OPER_SPY) #define IsOperInvis(x) ((x)->flags2 & OPER_INVIS) #define IsOperRemoteBan(x) ((x)->flags2 & OPER_REMOTEBAN) +#define IsOperMassNotice(x) ((x)->flags2 & OPER_MASSNOTICE) extern struct oper_conf *make_oper_conf(void); extern void free_oper_conf(struct oper_conf *); @@ -202,11 +203,11 @@ struct server_conf time_t hold; int aftype; - struct irc_sockaddr_storage my_ipnum; + struct rb_sockaddr_storage my_ipnum; char *class_name; struct Class *class; - dlink_node node; + rb_dlink_node node; }; #define SERVER_ILLEGAL 0x0001 @@ -237,7 +238,9 @@ extern void set_server_conf_autoconn(struct Client *source_p, char *name, extern struct ConfItem *find_xline(const char *, int); +extern struct ConfItem *find_xline_mask(const char *); extern struct ConfItem *find_nick_resv(const char *name); +extern struct ConfItem *find_nick_resv_mask(const char *name); extern int valid_wild_card_simple(const char *); extern int clean_resv_nick(const char *); @@ -247,10 +250,7 @@ struct nd_entry { char name[NICKLEN+1]; time_t expire; - unsigned int hashv; - - dlink_node hnode; /* node in hash */ - dlink_node lnode; /* node in ll */ + rb_dlink_node lnode; /* node in ll */ }; extern void add_nd_entry(const char *name);