summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/extern.h2
-rw-r--r--include/services.h29
-rw-r--r--src/core/os_news.c24
-rw-r--r--src/operserv.c3
4 files changed, 34 insertions, 24 deletions
diff --git a/include/extern.h b/include/extern.h
index c73a27de0..d1898fd46 100644
--- a/include/extern.h
+++ b/include/extern.h
@@ -688,6 +688,8 @@ E int check_szline(const char *nick, char *ip);
E Server *server_global(Server * s, char *msg);
+E std::vector<NewsItem *> News;
+
E bool CheckDefCon(DefconLevel Level);
E bool CheckDefCon(int level, DefconLevel Level);
E void AddDefCon(int level, DefconLevel Level);
diff --git a/include/services.h b/include/services.h
index 874c53675..d5596c833 100644
--- a/include/services.h
+++ b/include/services.h
@@ -1023,6 +1023,35 @@ typedef struct ignore_data {
/*************************************************************************/
+/* News stuff */
+
+#define MSG_MAX 11
+
+enum NewsType
+{
+ NEWS_LOGON,
+ NEWS_RANDOM,
+ NEWS_OPER
+};
+
+struct newsmsgs
+{
+ NewsType type;
+ const char *name;
+ int msgs[MSG_MAX + 1];
+};
+
+struct NewsItem
+{
+ NewsType type;
+ uint32 num;
+ std::string Text;
+ char who[NICKMAX];
+ time_t time;
+};
+
+/*************************************************************************/
+
/* Mail data */
struct mailinfo_ {
diff --git a/src/core/os_news.c b/src/core/os_news.c
index 103c416b2..4ca0e057d 100644
--- a/src/core/os_news.c
+++ b/src/core/os_news.c
@@ -32,30 +32,6 @@
#define MSG_DELETED_ALL 11
#define MSG_MAX 11
-enum NewsType
-{
- NEWS_LOGON,
- NEWS_RANDOM,
- NEWS_OPER
-};
-
-struct newsmsgs {
- NewsType type;
- const char *name;
- int msgs[MSG_MAX + 1];
-};
-
-struct NewsItem
-{
- NewsType type;
- uint32 num;
- std::string Text;
- char who[NICKMAX];
- time_t time;
-};
-
-std::vector<NewsItem *> News;
-
struct newsmsgs msgarray[] = {
{NEWS_LOGON, "LOGON",
{NEWS_LOGON_SYNTAX,
diff --git a/src/operserv.c b/src/operserv.c
index 76d680a99..65cf50930 100644
--- a/src/operserv.c
+++ b/src/operserv.c
@@ -31,6 +31,9 @@ static void free_sqline_entry(SList * slist, void *item);
static int is_szline_entry_equal(SList * slist, void *item1, void *item2);
static void free_szline_entry(SList * slist, void *item);
+/* News items */
+std::vector<NewsItem *> News;
+
std::vector<std::bitset<32> > DefCon;
int DefConModesSet = 0;
ChannelInfo DefConModesCI; /* ChannelInfo containg params for locked modes