summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/example.conf22
-rw-r--r--data/tables.sql8
-rw-r--r--docs/Changes1
-rw-r--r--docs/Changes.conf5
-rw-r--r--docs/Changes.lang53
-rw-r--r--docs/IRCD4
-rw-r--r--include/Makefile3
-rw-r--r--include/account.h2
-rw-r--r--include/config.h16
-rw-r--r--include/extern.h59
-rw-r--r--include/modules.h26
-rw-r--r--include/operserv.h231
-rw-r--r--include/services.h71
-rw-r--r--include/slist.h49
-rw-r--r--lang/cat.l146
-rw-r--r--lang/de.l146
-rw-r--r--lang/en_us.l140
-rw-r--r--lang/es.l146
-rw-r--r--lang/fr.l144
-rw-r--r--lang/gr.l144
-rw-r--r--lang/hun.l140
-rw-r--r--lang/it.l142
-rw-r--r--lang/nl.l142
-rw-r--r--lang/pl.l132
-rw-r--r--lang/pt.l140
-rw-r--r--lang/ru.l144
-rw-r--r--lang/tr.l142
-rw-r--r--src/Makefile4
-rw-r--r--src/actions.c40
-rw-r--r--src/bots.cpp3
-rw-r--r--src/config.c12
-rw-r--r--src/core/bs_bot.c15
-rw-r--r--src/core/cs_drop.c3
-rw-r--r--src/core/cs_forbid.c3
-rw-r--r--src/core/db_plain.cpp99
-rw-r--r--src/core/hs_delall.c8
-rw-r--r--src/core/ns_drop.c5
-rw-r--r--src/core/ns_forbid.c5
-rw-r--r--src/core/ns_group.c20
-rw-r--r--src/core/ns_saset.c14
-rw-r--r--src/core/ns_set.c18
-rw-r--r--src/core/ns_suspend.c8
-rw-r--r--src/core/os_akill.c336
-rw-r--r--src/core/os_chankill.c10
-rw-r--r--src/core/os_defcon.c24
-rw-r--r--src/core/os_sgline.c410
-rw-r--r--src/core/os_snline.cpp426
-rw-r--r--src/core/os_sqline.c324
-rw-r--r--src/core/os_stats.c114
-rw-r--r--src/core/os_szline.c321
-rw-r--r--src/hostserv.c4
-rw-r--r--src/init.c3
-rw-r--r--src/main.c10
-rw-r--r--src/memoserv.c7
-rw-r--r--src/misc.c14
-rw-r--r--src/modules/mysql/db_mysql_read.cpp57
-rw-r--r--src/modules/mysql/db_mysql_write.cpp77
-rw-r--r--src/nickalias.cpp10
-rw-r--r--src/nickcore.cpp1
-rw-r--r--src/nickserv.c6
-rw-r--r--src/operserv.c1325
-rw-r--r--src/protocol/bahamut.c46
-rw-r--r--src/protocol/inspircd11.c32
-rw-r--r--src/protocol/inspircd12.cpp34
-rw-r--r--src/protocol/ratbox.c30
-rw-r--r--src/protocol/unreal32.c48
-rw-r--r--src/regchannel.cpp9
-rw-r--r--src/send.c18
-rw-r--r--src/sessions.c8
-rw-r--r--src/slist.c395
-rw-r--r--src/tools/db-convert.c4
-rw-r--r--src/users.c15
72 files changed, 3155 insertions, 3618 deletions
diff --git a/data/example.conf b/data/example.conf
index aa7d9ab8b..0954b8d0d 100644
--- a/data/example.conf
+++ b/data/example.conf
@@ -603,7 +603,7 @@ options
*
* operserv/global operserv/news operserv/stats operserv/kick
* operserv/mode operserv/session operserv/modlist operserv/ignore
- * operserv/chankill operserv/akill operserv/sqline operserv/sgline
+ * operserv/chankill operserv/akill operserv/sqline operserv/snline
* operserv/szline operserv/clearmodes operserv/staff operserv/defcon
* operserv/modload operserv/jupe operserv/set operserv/noop
* operserv/quit operserv/update operserv/reload operserv/restart
@@ -636,7 +636,7 @@ opertype
inherits = "Helper, Another Helper"
/* What commands (see above) this opertype may use */
- commands = "chanserv/list chanserv/suspend chanserv/status chanserv/topic memoserv/staff nickserv/sendpass nickserv/resetpass nickserv/suspend operserv/mode operserv/chankill operserv/szline operserv/akill operserv/session operserv/clearmodes operserv/modlist operserv/sqline operser/staff operserv/kick operserv/ignore operserv/sgline"
+ commands = "chanserv/list chanserv/suspend chanserv/status chanserv/topic memoserv/staff nickserv/sendpass nickserv/resetpass nickserv/suspend operserv/mode operserv/chankill operserv/szline operserv/akill operserv/session operserv/clearmodes operserv/modlist operserv/sqline operserv/staff operserv/kick operserv/ignore operserv/snline"
/* What privs (see above) this opertype has */
privs = "chanserv/auspex chanserv/no-register-limit memoserv/* nickserv/auxpex nickserv/confirm"
@@ -1264,7 +1264,7 @@ operserv
* The core modules to load for OperServ. This is a space separated list that corresponds
* to the base names of the modules for OperServ. This directive is optional, but highly recommended.
*/
- modules = "os_help os_global os_stats os_staff os_mode os_kick os_clearmodes os_akill os_sgline os_sqline os_szline os_chanlist os_userlist os_news os_session os_noop os_jupe os_ignore os_set os_reload os_update os_restart os_quit os_shutdown os_defcon os_chankill os_svsnick os_oline os_umode os_modload os_modunload os_modlist os_modinfo"
+ modules = "os_help os_global os_stats os_staff os_mode os_kick os_clearmodes os_akill os_snline os_sqline os_szline os_chanlist os_userlist os_news os_session os_noop os_jupe os_ignore os_set os_reload os_update os_restart os_quit os_shutdown os_defcon os_chankill os_svsnick os_oline os_umode os_modload os_modunload os_modlist os_modinfo"
/*
* If set, Services Admins will be able to use SUPERADMIN [ON|OFF] which will temporarily grant
@@ -1280,12 +1280,12 @@ operserv
logmaxusers = yes
/*
- * These define the default expiration times for, respectively, AKILLs, CHANKILLs, SGLINEs,
+ * These define the default expiration times for, respectively, AKILLs, CHANKILLs, SNLINEs,
* SQLINEs, and SZLINEs.
*/
autokillexpiry = 30d
chankillexpiry = 30d
- sglineexpiry = 30d
+ snlineexpiry = 30d
sqlineexpiry = 30d
szlineexpiry = 30d
@@ -1297,11 +1297,11 @@ operserv
#akillonadd = yes
/*
- * If set, this option will make Services send an (SVS)KILL command immediately after SGLINE ADD.
- * This eliminates the need for killingthe user after the SGLINE has been added. This directive
+ * If set, this option will make Services send an (SVS)KILL command immediately after SNLINE ADD.
+ * This eliminates the need for killingthe user after the SNLINE has been added. This directive
* is optional.
*/
- #killonsgline = yes
+ #killonsnline = yes
/*
* If set, this option will make Services send an (SVS)KILL command immediately after SQLINE ADD.
@@ -1321,13 +1321,13 @@ operserv
* - osclearmodes: OperServ's CLEARMODES command was used
* - oskick: OperServ's KICK command was used
* - osakill: OperServ's AKILL command was used
- * - ossgline: OperServ's SGLINE command was used
+ * - ossnline: OperServ's SNLINE command was used
* - ossqline: OperServ's SQLINE command was used
* - osszline: OperServ's SZLINE command was used
* - osnoop: OperServ's NOOP command was used
* - osjupe: OperServ's JUPE command was used
* - akillexpire: An AKILL has expired
- * - sglineexpire: An SGLINE has expired
+ * - snlineexpire: An SNLINE has expired
* - sqlineexpire: An SQLINE has expired
* - szlineexpire: An SZLINE has expired
* - exceptionexpire: A session exception has expired
@@ -1340,7 +1340,7 @@ operserv
*
* This directive is optional, if left blank, there will be no notifications.
*/
- notifications="osglobal osmode osclearmodes oskick osakill ossgline ossqline osszline osnoop osjupe getpass setpass forbid drop"
+ notifications="osglobal osmode osclearmodes oskick osakill ossnline ossqline osszline osnoop osjupe getpass setpass forbid drop"
/*
* Enables session limiting. Session limiting prevents users from connecting more than a certain
diff --git a/data/tables.sql b/data/tables.sql
index 23ba0ca50..deeef41cc 100644
--- a/data/tables.sql
+++ b/data/tables.sql
@@ -322,7 +322,7 @@ CREATE TABLE anope_os_core (
maxusercnt int(11) NOT NULL default '0',
maxusertime int(10) unsigned NOT NULL default '0',
akills_count int(11) NOT NULL default '0',
- sglines_count int(11) NOT NULL default '0',
+ snlines_count int(11) NOT NULL default '0',
sqlines_count int(11) NOT NULL default '0',
szlines_count int(11) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
@@ -346,11 +346,11 @@ CREATE TABLE anope_os_exceptions (
-- --------------------------------------------------------
--
--- Table structure for table 'anope_os_sxlines'
+-- Table structure for table 'anope_os_xlines'
--
-DROP TABLE IF EXISTS anope_os_sxlines;
-CREATE TABLE anope_os_sxlines (
+DROP TABLE IF EXISTS anope_os_xlines;
+CREATE TABLE anope_os_xlines (
type varchar(20) NOT NULL,
mask varchar(255) NOT NULL,
xby text NOT NULL,
diff --git a/docs/Changes b/docs/Changes
index d88eae010..7786757fa 100644
--- a/docs/Changes
+++ b/docs/Changes
@@ -6,6 +6,7 @@ A Added official support for InspIRCd 2.0
A Prevent negaitve mode changes, kicks, bans, and autokicks from affecting people with the 'god' user mode (On UnrealIRCd, usermode +q)
A Added nickserv/auxpex permission
A Added nickserv ungroup command
+A Renamed the SGLINE to be SNLINE
Anope Version 1.9.2
--------------------
diff --git a/docs/Changes.conf b/docs/Changes.conf
index 944238db6..03d012a14 100644
--- a/docs/Changes.conf
+++ b/docs/Changes.conf
@@ -6,6 +6,11 @@ SSL module added for SSL support
opertype:inherits added to allow opertypes to inherit commands and privs from other opertypes
** MODIFIED CONFIGURATION DIRECTIVES **
+opertype:commands changed operserv/sgline to opserv/snline
+operserv:modules changed os_sgline to os_snline
+operserv:sglineexpiry changed to operserv:snlineexpiry
+operserv:killonsgline changed to operserv:killonsnline
+operserv:notifications ossgline changed ossnline
** DELETED CONFIGURATION DIRECTIVES **
diff --git a/docs/Changes.lang b/docs/Changes.lang
index 4289ba295..701d4fff4 100644
--- a/docs/Changes.lang
+++ b/docs/Changes.lang
@@ -12,6 +12,31 @@ Anope Version 1.9.3
NICK_MAIL_TEXT
NICK_SENDPASS
CHAN_LEVEL_FOUNDER
+ OPER_STATS_SNLINE_COUNT
+ OPER_STATS_SNLINE_EXPIRE_DAY
+ OPER_STATS_SNLINE_EXPIRE_HOURS
+ OPER_STATS_SNLINE_EXPIRE_MINS
+ OPER_STATS_SNLINE_EXPIRE_MIN
+ OPER_STATS_SNLINE_EXPIRE_NONE
+ OPER_SNLINE_SYNTAX
+ OPER_SNLINE_UNSUPPORTED
+ OPER_SNLINE_EXISTS
+ OPER_SNLINE_ALREADY_COVERED
+ OPER_SNLINE_REACHED_LIMIT
+ OPER_SNLINE_ADDED
+ OPER_SNLINE_CHANGED
+ OPER_SNLINE_NOT_FOUND
+ OPER_SNLINE_NO_MATCH
+ OPER_SNLINE_DELETED
+ OPER_SNLINE_DELETED_ONE
+ OPER_SNLINE_DELETED_SEVERAL
+ OPER_SNLINE_LIST_EMPTY
+ OPER_SNLINE_LIST_HEADER
+ OPER_SNLINE_LIST_FORMAT
+ OPER_SNLINE_VIEW_HEADER
+ OPER_SNLINE_CLEAR
+ OPER_HELP_CMD_SNLINE
+ OPER_HELP_SNLINE
*** Mod Strings:
NICK_GLIST_REPLY
@@ -34,6 +59,34 @@ Anope Version 1.9.3
NICK_SENDPASS_HEAD_3
NICK_SENDPASS_HEAD_4
NICK_SENDPASS_HEAD_5
+<<<<<<< HEAD
+ OPER_STATS_SGLINE_COUNT
+ OPER_STATS_SGLINE_EXPIRE_DAY
+ OPER_STATS_SGLINE_EXPIRE_HOURS
+ OPER_STATS_SGLINE_EXPIRE_MINS
+ OPER_STATS_SGLINE_EXPIRE_MIN
+ OPER_STATS_SGLINE_EXPIRE_NONE
+ OPER_SGLINE_SYNTAX
+ OPER_SGLINE_UNSUPPORTED
+ OPER_SGLINE_EXISTS
+ OPER_SGLINE_ALREADY_COVERED
+ OPER_SGLINE_REACHED_LIMIT
+ OPER_SGLINE_ADDED
+ OPER_SGLINE_CHANGED
+ OPER_SGLINE_NOT_FOUND
+ OPER_SGLINE_NO_MATCH
+ OPER_SGLINE_DELETED
+ OPER_SGLINE_DELETED_ONE
+ OPER_SGLINE_DELETED_SEVERAL
+ OPER_SGLINE_LIST_EMPTY
+ OPER_SGLINE_LIST_HEADER
+ OPER_SGLINE_LIST_FORMAT
+ OPER_SGLINE_VIEW_HEADER
+ OPER_SGLINE_CLEAR
+ OPER_HELP_CMD_SGLINE
+ OPER_HELP_SGLINE
+=======
+>>>>>>> 1.9.3-2
Anope Version 1.9.2
--------------------
diff --git a/docs/IRCD b/docs/IRCD
index 52ee424bb..ad81c97f1 100644
--- a/docs/IRCD
+++ b/docs/IRCD
@@ -85,7 +85,7 @@ How To Add IRCd Support
6) VHOST: Can a user's host be changed on the fly? Enabling this allow
HostServ online. Use 1 for yes, 0 for no.
- 7) SGLINE: Does the IRCd support realname (geocs) bans? Use 1 for yes,
+ 7) SNLINE: Does the IRCd support realname (geocs) bans? Use 1 for yes,
0 for no.
8) SQLINE: Does the IRCd support nick bans? Use 1 for yes, 0 for no.
@@ -172,7 +172,7 @@ How To Add IRCd Support
35) SVSMODE UCMODE: Can we clear user channel modes with SVSMODE? Use
1 for yes, 0 for no.
- 36) SGline Enforce: Does the IRCd enforce SGLINES for us or do we need to
+ 36) SGline Enforce: Does the IRCd enforce SNLINES for us or do we need to
do so? Use 1 for yes, 0 for no.
37) Vhost Character: The character used to represent the vHost mode, if
diff --git a/include/Makefile b/include/Makefile
index 4c20fa502..de32199d3 100644
--- a/include/Makefile
+++ b/include/Makefile
@@ -7,9 +7,6 @@ version.h: Makefile version.sh services.h $(SRCS)
services.h: sysconf.h config.h extern.h
touch $@
-extern.h: slist.h
- touch $@
-
clean:
(rm -f language.h)
diff --git a/include/account.h b/include/account.h
index 1a567c317..e44880c29 100644
--- a/include/account.h
+++ b/include/account.h
@@ -161,7 +161,7 @@ class CoreExport NickCore : public Extensible, public Flags<NickCoreFlag>
/* Unsaved data */
time_t lastmail; /* Last time this nick record got a mail */
- SList aliases; /* List of aliases */
+ std::list<NickAlias *> aliases; /* List of aliases */
/** Check whether this opertype has access to run the given command string.
* @param cmdstr The string to check, e.g. botserv/set/private.
diff --git a/include/config.h b/include/config.h
index c6dbbefb8..dacf3db06 100644
--- a/include/config.h
+++ b/include/config.h
@@ -623,16 +623,16 @@ class ServerConfig
time_t AutokillExpiry;
/* Default expiry time for chan kills */
time_t ChankillExpiry;
- /* Default expiry time for SGLine Expire */
- time_t SGLineExpiry;
+ /* Default expiry time for SNLine Expire */
+ time_t SNLineExpiry;
/* Default expiry time for SQLines */
time_t SQLineExpiry;
/* Default expiry time for SZLine */
time_t SZLineExpiry;
/* Actually akill the user when the akill is added */
bool AkillOnAdd;
- /* Kill users on SGline */
- bool KillonSGline;
+ /* Kill users on SNLine */
+ bool KillonSNline;
/* Kill users on SQline */
bool KillonSQline;
/* Send a WALLOPS/GLOBOPS when a user opers */
@@ -649,8 +649,8 @@ class ServerConfig
bool WallOSKick;
/* Send a WALLOPS/GLOBOPS when someone uses the AKILL command */
bool WallOSAkill;
- /* Send a WALLOPS/GLOBOPS when someone uses the SGLINE command */
- bool WallOSSGLine;
+ /* Send a WALLOPS/GLOBOPS when someone uses the SNLINE command */
+ bool WallOSSNLine;
/* Send a WALLOPS/GLOBOPS when someone uses the SQLINE command */
bool WallOSSQLine;
/* Send a WALLOPS/GLOBOPS when someone uses the SZLINE command */
@@ -661,8 +661,8 @@ class ServerConfig
bool WallOSJupe;
/* Send a WALLOPS/GLOBOPS when an akill expires */
bool WallAkillExpire;
- /* Send a WALLOPS/GLOBOPS when SGLines expire */
- bool WallSGLineExpire;
+ /* Send a WALLOPS/GLOBOPS when SNLines expire */
+ bool WallSNLineExpire;
/* Send a WALLOPS/GLOBOPS when SQLines expire */
bool WallSQLineExpire;
/* Send a WALLOPS/GLOBOPS when SZLines expire */
diff --git a/include/extern.h b/include/extern.h
index 6f41c3977..1e88561e3 100644
--- a/include/extern.h
+++ b/include/extern.h
@@ -17,7 +17,6 @@
#define E extern CoreExport
#define EI extern DllExport
-#include "slist.h"
#include "hashcomp.h"
E void ModuleRunTimeDirCleanUp();
@@ -33,7 +32,6 @@ E IRCDProto *ircdproto;
E void kill_user(const std::string &source, const std::string &user, const std::string &reason);
E bool bad_password(User *u);
-E void sqline(const std::string &mask, const std::string &reason);
E void common_unban(ChannelInfo *ci, const std::string &nick);
E BotInfo *BotServ;
@@ -372,50 +370,6 @@ E NickCore *findcore(const std::string &nick);
E NickCore *findcore(const ci::string &nick);
E bool is_on_access(User *u, NickCore *nc);
-/**** operserv.c ****/
-
-E SList akills, sglines, sqlines, szlines;
-
-E int DefConModesSet;
-E Flags<ChannelModeName> DefConModesOn;
-E Flags<ChannelModeName> DefConModesOff;
-E std::map<ChannelModeName, std::string> DefConModesOnParams;
-E bool SetDefConParam(ChannelModeName, std::string &);
-E bool GetDefConParam(ChannelModeName, std::string *);
-E void UnsetDefConParam(ChannelModeName);
-
-E void operserv(User *u, char *buf);
-E void os_init();
-
-E int add_akill(User *u, const char *mask, const char *by, const time_t expires, const char *reason);
-E int check_akill(const char *nick, const char *username, const char *host, const char *vhost, const char *ip);
-E void expire_akills();
-E void oper_global(char *nick, const char *fmt, ...);
-
-E int add_sgline(User *u, const char *mask, const char *by, time_t expires, const char *reason);
-E int check_sgline(const char *nick, const char *realname);
-E void expire_sglines();
-
-E int add_sqline(User *u, const char *mask, const char *by, time_t expires, const char *reason);
-E int check_sqline(const char *nick, int nick_change);
-E void expire_sqlines();
-E int check_chan_sqline(const char *chan);
-
-E int add_szline(User * u, const char *mask, const char *by,
- time_t expires, const char *reason);
-E void expire_szlines();
-E int check_szline(const char *nick, char *ip);
-
-E void server_global(Server *s, const std::string &message);
-
-E std::vector<NewsItem *> News;
-
-E bool CheckDefCon(DefconLevel Level);
-E bool CheckDefCon(int level, DefconLevel Level);
-E void AddDefCon(int level, DefconLevel Level);
-E void DelDefCon(int level, DefconLevel Level);
-E std::vector<std::bitset<32> > DefCon;
-
/**** process.c ****/
E int allow_ignore;
@@ -463,19 +417,6 @@ E int exception_add(User * u, const char *mask, const int limit,
const char *reason, const char *who,
const time_t expires);
-/**** slist.c ****/
-E int slist_add(SList *slist, void *item);
-E void slist_clear(SList *slist, int free);
-E int slist_delete(SList *slist, int index);
-E int slist_delete_range(SList *slist, const char *range, slist_delcheckcb_t cb, ...);
-E int slist_enum(SList *slist, const char *range, slist_enumcb_t cb, ...);
-E int slist_full(SList *slist);
-E int slist_indexof(SList *slist, void *item);
-E void slist_init(SList *slist);
-E void slist_pack(SList *slist);
-E int slist_remove(SList *slist, void *item);
-E int slist_setcapacity(SList *slist, int16 capacity);
-
/**** sockets.cpp ****/
E SocketEngine socketEngine;
E int32 TotalRead;
diff --git a/include/modules.h b/include/modules.h
index 98dfd6d3e..963e07a4c 100644
--- a/include/modules.h
+++ b/include/modules.h
@@ -713,13 +713,13 @@ class CoreExport Module
* @param ak The akill
* @return EVENT_CONTINUE to let other modules decide, EVENT_STOP to halt the command and not process it
*/
- virtual EventReturn OnAddAkill(User *u, Akill *ak) { return EVENT_CONTINUE; }
+ virtual EventReturn OnAddAkill(User *u, XLine *ak) { return EVENT_CONTINUE; }
/** Called before an akill is deleted
* @param u The user removing the akill
* @param ak The akill, can be NULL for all akills!
*/
- virtual void OnDelAkill(User *u, Akill *ak) { }
+ virtual void OnDelAkill(User *u, XLine *ak) { }
/** Called after an exception has been added
* @param u The user who added it
@@ -734,20 +734,20 @@ class CoreExport Module
*/
virtual void OnExceptionDel(User *u, Exception *ex) { }
- /** Called before a SXLine is added
- * @param u The user adding the SXLine
- * @param sx The SXLine
- * @param Type The type of SXLine this is
+ /** Called before a XLine is added
+ * @param u The user adding the XLine
+ * @param sx The XLine
+ * @param Type The type of XLine this is
* @return EVENT_CONTINUE to let other modules decide, EVENT_STOP to halt the command and not process it
*/
- virtual EventReturn OnAddSXLine(User *u, SXLine *sx, SXLineType Type) { return EVENT_CONTINUE; }
+ virtual EventReturn OnAddXLine(User *u, XLine *x, XLineType Type) { return EVENT_CONTINUE; }
- /** Called before a SXLine is deleted
- * @param u The user deleting the SXLine
- * @param sx The SXLine, can be NULL for all SXLines
- * @param Type The type of SXLine this is
+ /** Called before a XLine is deleted
+ * @param u The user deleting the XLine
+ * @param sx The XLine, can be NULL for all XLines
+ * @param Type The type of XLine this is
*/
- virtual void OnDelSXLine(User *u, SXLine *sx, SXLineType Type) { }
+ virtual void OnDelXLine(User *u, XLine *x, XLineType Type) { }
/** Called when a server quits
* @param server The server
@@ -1118,7 +1118,7 @@ enum Implementation
/* OperServ */
I_OnOperServHelp, I_OnDefconLevel, I_OnAddAkill, I_OnDelAkill, I_OnExceptionAdd, I_OnExceptionDel,
- I_OnAddSXLine, I_OnDelSXLine,
+ I_OnAddXLine, I_OnDelXLine,
/* Database */
I_OnPostLoadDatabases, I_OnSaveDatabase, I_OnLoadDatabase,
diff --git a/include/operserv.h b/include/operserv.h
new file mode 100644
index 000000000..ff2149372
--- /dev/null
+++ b/include/operserv.h
@@ -0,0 +1,231 @@
+/* OperServ support
+ *
+ * (C) 2008-2010 Anope Team
+ * Contact us at team@anope.org
+ *
+ * Please read COPYING and README for further details.
+ *
+ * $Id$
+ *
+ */
+
+extern CoreExport std::vector<NewsItem *> News;
+extern CoreExport std::vector<std::bitset<32> > DefCon;
+extern CoreExport bool DefConModesSet;
+extern CoreExport Flags<ChannelModeName> DefConModesOn;
+extern CoreExport Flags<ChannelModeName> DefConModesOff;
+extern CoreExport std::map<ChannelModeName, std::string> DefConModesOnParams;
+
+class XLineManager;
+extern CoreExport XLineManager *SGLine;
+extern CoreExport XLineManager *SZLine;
+extern CoreExport XLineManager *SQLine;
+extern CoreExport XLineManager *SNLine;