mirror of
https://github.com/anope/anope.git
synced 2026-06-12 19:34:48 +02:00
BUILD : 1.7.5 (365) BUGS : 172 NOTES : - New directive NewsCount - fr.l updated - do_memocheck() globalized the time display - getmemoinfo() improved to return info about being forbidden - fixes svsnick on Unreal - anope_event_null to allow ircd devs to point events that go to no where some where - fixed SQUIT
git-svn-id: svn://svn.anope.org/anope/trunk@365 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@236 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
parent
7bc5f4a8ed
commit
04afc85480
@@ -17,6 +17,7 @@ Provided by Anope Dev. <dev@anope.org> - 2004
|
||||
08/24 F Compile error with gcc2. [ #00]
|
||||
|
||||
Provided by Trystan <trystan@nomadirc.net> - 2004
|
||||
10/02 A Added NewsCount as new feature in services.conf [ #00]
|
||||
08/28 A CSupport for +I channel mode. [ #00]
|
||||
08/28 A Complete support for Unreal3.2 [ #00]
|
||||
08/28 A New BASE64 general library. [ #00]
|
||||
|
||||
@@ -31,6 +31,11 @@ Anope Version S V N
|
||||
# show services changing user modes.
|
||||
#UseSVS2MODE
|
||||
|
||||
# NewsCount [OPTIONAL]
|
||||
# The number of LOGON/OPER News item to display when a user logins
|
||||
# on. The default value is 3
|
||||
#NewsCount
|
||||
|
||||
|
||||
** MODIFIED CONFIGURATION DIRECTIVES **
|
||||
** DELETED CONFIGURATION DIRECTIVES **
|
||||
|
||||
@@ -476,6 +476,11 @@ GlobalOnCycleUP "Services are now back online - have a nice day"
|
||||
# show services changing user modes.
|
||||
#UseSVS2MODE
|
||||
|
||||
# NewsCount [OPTIONAL]
|
||||
# The number of LOGON/OPER News item to display when a user logins
|
||||
# on. The default value is 3
|
||||
#NewsCount
|
||||
|
||||
###########################################################################
|
||||
#
|
||||
# Mail-related options
|
||||
|
||||
@@ -295,6 +295,7 @@ E int UseSVSHOLD;
|
||||
E int UseSVS2MODE;
|
||||
E int RestrictOperNicks;
|
||||
E int UseTokens;
|
||||
E int NewsCount;
|
||||
|
||||
E char **HostSetters;
|
||||
E int HostNumber;
|
||||
@@ -1074,6 +1075,7 @@ extern int anope_event_rehash(char *source, int ac, char **av);
|
||||
extern int anope_event_sdesc(char *source, int ac, char **av);
|
||||
extern int anope_event_netglobal(char *source, int ac, char **av);
|
||||
extern int anope_event_invite(char *source, int ac, char **av);
|
||||
extern int anope_event_null(char *source, int ac, char **av);
|
||||
|
||||
extern void anope_set_umode(User * user, int ac, char **av);
|
||||
extern void anope_cmd_svid_umode(char *nick, time_t ts);
|
||||
|
||||
@@ -1791,9 +1791,9 @@ MEMO_RSEND_USER_NOTIFICATION
|
||||
MEMO_CHECK_SYNTAX
|
||||
CHECK nickname
|
||||
MEMO_CHECK_NOT_READ
|
||||
The last memo you sent to %s (sent on %s) has not yet been read.
|
||||
Le dernier mémo que vous avez envoyé à %s (le %s) n'a pas encore été lu.
|
||||
MEMO_CHECK_READ
|
||||
The last memo you sent to %s (sent on %s) has been read.
|
||||
Le dernier mémo que vous avez envoyé à %s (le %s) a été lu.
|
||||
MEMO_CHECK_NO_MEMO
|
||||
Nick %s doesn't have a memo from you.
|
||||
|
||||
|
||||
+1
-1
@@ -129,7 +129,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
0, /* DODKEY */
|
||||
CAPAB_DOZIP, /* DOZIP */
|
||||
0}
|
||||
0, 0}
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -119,6 +119,7 @@ int NickRegDelay;
|
||||
int UseSVSHOLD;
|
||||
int UseTokens;
|
||||
int UseSVS2MODE;
|
||||
int NewsCount;
|
||||
|
||||
int UseMail;
|
||||
char *SendMailPath;
|
||||
@@ -510,6 +511,7 @@ Directive directives[] = {
|
||||
{"MSMemoReceipt", {{PARAM_POSINT, PARAM_RELOAD, &MSMemoReceipt}}},
|
||||
{"NetworkDomain", {{PARAM_STRING, PARAM_RELOAD, &NetworkDomain}}},
|
||||
{"NetworkName", {{PARAM_STRING, PARAM_RELOAD, &NetworkName}}},
|
||||
{"NewsCount", {{PARAM_POSINT, PARAM_RELOAD, &NewsCount}}},
|
||||
{"NewsDB", {{PARAM_STRING, PARAM_RELOAD, &NewsDBName}}},
|
||||
{"NickservDB", {{PARAM_STRING, PARAM_RELOAD, &NickDBName}}},
|
||||
{"PreNickServDB", {{PARAM_STRING, PARAM_RELOAD, &PreNickDBName}}},
|
||||
@@ -1087,6 +1089,10 @@ int read_config(int reload)
|
||||
}
|
||||
}
|
||||
|
||||
if (!NewsCount) {
|
||||
NewsCount = 3;
|
||||
}
|
||||
|
||||
if (reload) {
|
||||
if ((NSDefLanguage = langlist[NSDefLanguage]) < 0)
|
||||
NSDefLanguage = DEF_LANGUAGE;
|
||||
|
||||
+1
-1
@@ -128,7 +128,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
0, /* DODKEY */
|
||||
0, /* DOZIP */
|
||||
0}
|
||||
0, 0}
|
||||
};
|
||||
|
||||
void anope_set_umode(User * user, int ac, char **av)
|
||||
|
||||
+1
-1
@@ -128,7 +128,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
0, /* DODKEY */
|
||||
0, /* DOZIP */
|
||||
0}
|
||||
0, 0}
|
||||
};
|
||||
|
||||
|
||||
|
||||
+53
-23
@@ -154,28 +154,45 @@ void check_memos(User * u)
|
||||
|
||||
/* Return the MemoInfo corresponding to the given nick or channel name.
|
||||
* Return in `ischan' 1 if the name was a channel name, else 0.
|
||||
* Return in `isforbid' 1 if the name is forbidden, else 0.
|
||||
*/
|
||||
|
||||
static MemoInfo *getmemoinfo(const char *name, int *ischan)
|
||||
static MemoInfo *getmemoinfo(const char *name, int *ischan, int *isforbid)
|
||||
{
|
||||
if (*name == '#') {
|
||||
ChannelInfo *ci;
|
||||
if (ischan)
|
||||
*ischan = 1;
|
||||
ci = cs_findchan(name);
|
||||
if (ci && !(ci->flags & CI_VERBOTEN))
|
||||
return &ci->memos;
|
||||
else
|
||||
if (ci) {
|
||||
if (!(ci->flags & CI_VERBOTEN)) {
|
||||
*isforbid = 0;
|
||||
return &ci->memos;
|
||||
} else {
|
||||
*isforbid = 1;
|
||||
return NULL;
|
||||
}
|
||||
} else {
|
||||
*isforbid = 0;
|
||||
return NULL;
|
||||
}
|
||||
} else {
|
||||
NickAlias *na;
|
||||
if (ischan)
|
||||
*ischan = 0;
|
||||
na = findnick(name);
|
||||
if (na && !(na->status & NS_VERBOTEN))
|
||||
return &na->nc->memos;
|
||||
else
|
||||
if (na) {
|
||||
if (!(na->status & NS_VERBOTEN)) {
|
||||
*isforbid = 0;
|
||||
return &na->nc->memos;
|
||||
} else {
|
||||
*isforbid = 1;
|
||||
return NULL;
|
||||
}
|
||||
} else {
|
||||
*isforbid = 0;
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,6 +278,7 @@ static int do_send(User * u)
|
||||
void memo_send(User * u, char *name, char *text, int z)
|
||||
{
|
||||
int ischan;
|
||||
int isforbid;
|
||||
Memo *m;
|
||||
MemoInfo *mi;
|
||||
time_t now = time(NULL);
|
||||
@@ -284,11 +302,17 @@ void memo_send(User * u, char *name, char *text, int z)
|
||||
if (z == 0 || z == 3)
|
||||
notice_lang(s_MemoServ, u, NICK_IDENTIFY_REQUIRED, s_NickServ);
|
||||
|
||||
} else if (!(mi = getmemoinfo(name, &ischan))) {
|
||||
} else if (!(mi = getmemoinfo(name, &ischan, &isforbid))) {
|
||||
if (z == 0 || z == 3)
|
||||
notice_lang(s_MemoServ, u,
|
||||
ischan ? CHAN_X_NOT_REGISTERED :
|
||||
NICK_X_NOT_REGISTERED, name);
|
||||
if (isforbid) {
|
||||
notice_lang(s_MemoServ, u,
|
||||
ischan ? CHAN_X_FORBIDDEN :
|
||||
NICK_X_FORBIDDEN, name);
|
||||
} else {
|
||||
notice_lang(s_MemoServ, u,
|
||||
ischan ? CHAN_X_NOT_REGISTERED :
|
||||
NICK_X_NOT_REGISTERED, name);
|
||||
}
|
||||
|
||||
} else if (z != 2 && MSSendDelay > 0 &&
|
||||
u && u->lastmemosend + MSSendDelay > now && !is_servoper) {
|
||||
@@ -390,6 +414,7 @@ void memo_send(User * u, char *name, char *text, int z)
|
||||
static int do_cancel(User * u)
|
||||
{
|
||||
int ischan;
|
||||
int isforbid;
|
||||
char *name = strtok(NULL, " ");
|
||||
MemoInfo *mi;
|
||||
|
||||
@@ -399,10 +424,16 @@ static int do_cancel(User * u)
|
||||
} else if (!nick_recognized(u)) {
|
||||
notice_lang(s_MemoServ, u, NICK_IDENTIFY_REQUIRED, s_NickServ);
|
||||
|
||||
} else if (!(mi = getmemoinfo(name, &ischan))) {
|
||||
notice_lang(s_MemoServ, u,
|
||||
ischan ? CHAN_X_NOT_REGISTERED : NICK_X_NOT_REGISTERED,
|
||||
name);
|
||||
} else if (!(mi = getmemoinfo(name, &ischan, &isforbid))) {
|
||||
if (isforbid) {
|
||||
notice_lang(s_MemoServ, u,
|
||||
ischan ? CHAN_X_FORBIDDEN :
|
||||
NICK_X_FORBIDDEN, name);
|
||||
} else {
|
||||
notice_lang(s_MemoServ, u,
|
||||
ischan ? CHAN_X_NOT_REGISTERED :
|
||||
NICK_X_NOT_REGISTERED, name);
|
||||
}
|
||||
} else {
|
||||
int i;
|
||||
|
||||
@@ -1335,8 +1366,9 @@ static int do_memocheck(User * u)
|
||||
NickAlias *na = NULL;
|
||||
MemoInfo *mi = NULL;
|
||||
int i, found = 0;
|
||||
char *stime = NULL;
|
||||
char *recipient = strtok(NULL, "");
|
||||
struct tm *tm;
|
||||
char timebuf[64];
|
||||
|
||||
if (!recipient) {
|
||||
syntax_error(s_MemoServ, u, "CHECK", MEMO_CHECK_SYNTAX);
|
||||
@@ -1358,15 +1390,16 @@ static int do_memocheck(User * u)
|
||||
if (!stricmp(mi->memos[i].sender, u->nick)) {
|
||||
found = 1; /* Yes, we've found the memo */
|
||||
|
||||
stime = strdup(ctime(&mi->memos[i].time));
|
||||
*(stime + strlen(stime) - 1) = ' '; /* cut the f*cking \0 terminator and replace it with a single space */
|
||||
tm = localtime(&mi->memos[i].time);
|
||||
strftime_lang(timebuf, sizeof(timebuf), u,
|
||||
STRFTIME_DATE_TIME_FORMAT, tm);
|
||||
|
||||
if (mi->memos[i].flags & MF_UNREAD)
|
||||
notice_lang(s_MemoServ, u, MEMO_CHECK_NOT_READ, na->nick,
|
||||
stime);
|
||||
timebuf);
|
||||
else
|
||||
notice_lang(s_MemoServ, u, MEMO_CHECK_READ, na->nick,
|
||||
stime);
|
||||
timebuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -1374,9 +1407,6 @@ static int do_memocheck(User * u)
|
||||
if (!found)
|
||||
notice_lang(s_MemoServ, u, MEMO_CHECK_NO_MEMO, na->nick);
|
||||
|
||||
if (stime)
|
||||
free(stime);
|
||||
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
|
||||
@@ -362,6 +362,11 @@ int m_whois(char *source, char *who)
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
/* NULL route messages */
|
||||
int anope_event_null(char *source, int ac, char **av)
|
||||
{
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
void moduleAddMsgs(void) {
|
||||
|
||||
+2
-2
@@ -298,10 +298,10 @@ void display_news(User * u, int16 type)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
int i, count = 0; /* Number we're going to show--not more than 3 */
|
||||
int i, count = 0;
|
||||
|
||||
for (i = nnews - 1; i >= 0; i--) {
|
||||
if (count >= 3)
|
||||
if (count >= NewsCount)
|
||||
break;
|
||||
if (news[i].type == type)
|
||||
count++;
|
||||
|
||||
+12
-3
@@ -128,7 +128,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
0, /* DODKEY */
|
||||
0, /* DOZIP */
|
||||
0}
|
||||
0, 0}
|
||||
};
|
||||
|
||||
|
||||
@@ -544,7 +544,7 @@ void moduleAddIRCDMsgs(void) {
|
||||
m = createMessage("REHASH", anope_event_rehash); addCoreMessage(IRCD,m);
|
||||
m = createMessage("ADMIN", anope_event_admin); addCoreMessage(IRCD,m);
|
||||
m = createMessage("CREDITS", anope_event_credits); addCoreMessage(IRCD,m);
|
||||
|
||||
m = createMessage("ERROR", anope_event_error); addCoreMessage(IRCD,m);
|
||||
}
|
||||
|
||||
/* *INDENT-ON* */
|
||||
@@ -684,10 +684,19 @@ void anope_cmd_svsmode(User * u, int ac, char **av)
|
||||
(ac == 2 ? " " : ""), (ac == 2 ? av[1] : ""));
|
||||
}
|
||||
|
||||
int anope_event_error(char *source, int ac, char **av)
|
||||
{
|
||||
if (ac >= 1) {
|
||||
if (debug) {
|
||||
alog("ERROR: %s", av[0]);
|
||||
}
|
||||
}
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
void anope_cmd_squit(char *servname, char *message)
|
||||
{
|
||||
send_cmd(servname, "SQUIT %s :%s", servname, message);
|
||||
send_cmd(NULL, "SQUIT %s :%s", servname, message);
|
||||
}
|
||||
|
||||
/* PONG */
|
||||
|
||||
+1
-1
@@ -127,7 +127,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
0, /* DODKEY */
|
||||
0, /* DOZIP */
|
||||
0}
|
||||
0, 0}
|
||||
};
|
||||
|
||||
|
||||
|
||||
+2
-1
@@ -129,7 +129,8 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
0, /* DODKEY */
|
||||
0, /* DOZIP */
|
||||
CAPAB_CHANMODE /* CHANMODE */
|
||||
CAPAB_CHANMODE, /* CHANMODE */
|
||||
0,
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
+1
-1
@@ -126,7 +126,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
CAPAB_DODKEY, /* DODKEY */
|
||||
CAPAB_DOZIP, /* DOZIP */
|
||||
0}
|
||||
0, 0}
|
||||
};
|
||||
|
||||
void anope_set_umode(User * user, int ac, char **av)
|
||||
|
||||
+3
-1
@@ -129,7 +129,9 @@ IRCDCAPAB ircdcap[] = {
|
||||
CAPAB_TLKEXT, /* TLKEXT */
|
||||
0, /* DODKEY */
|
||||
0, /* DOZIP */
|
||||
0}
|
||||
0,
|
||||
0,
|
||||
}
|
||||
};
|
||||
|
||||
unsigned long umodes[128] = {
|
||||
|
||||
+57
-30
@@ -130,6 +130,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* DODKEY */
|
||||
0, /* DOZIP */
|
||||
CAPAB_CHANMODE, /* CHANMODE */
|
||||
CAPAB_SJB64,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -458,7 +459,7 @@ void moduleAddIRCDMsgs(void) {
|
||||
if (UseTokens) {
|
||||
m = createMessage("6", anope_event_away); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("INVITE", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("INVITE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
m = createMessage("JOIN", anope_event_join); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("C", anope_event_join); addCoreMessage(IRCD,m);
|
||||
@@ -515,69 +516,69 @@ void moduleAddIRCDMsgs(void) {
|
||||
if (UseTokens) {
|
||||
m = createMessage(")", anope_event_topic); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("USER", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("USER", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("%", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("%", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("WALLOPS", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("WALLOPS", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("=", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("=", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("WHOIS", anope_event_whois); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("#", anope_event_whois); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("AKILL", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("AKILL", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("V", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("V", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("GLOBOPS", anope_event_globops); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("]", anope_event_globops); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("GNOTICE", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("GNOTICE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("Z", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("Z", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("GOPER", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("GOPER", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("[", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("[", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("RAKILL", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("RAKILL", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("Y", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("Y", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("SILENCE", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("SILENCE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("U", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("U", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("SVSKILL", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("SVSKILL", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("h", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("h", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("SVSMODE", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("SVSMODE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("n", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("n", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("SVS2MODE", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("SVS2MODE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("v", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("v", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("SVSNICK", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("SVSNICK", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("e", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("e", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("SVSNOOP", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("SVSNOOP", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("f", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("f", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("SQLINE", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("SQLINE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("c", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("c", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("UNSQLINE", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("UNSQLINE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("d", NULL); addCoreMessage(IRCD,m);
|
||||
m = createMessage("d", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("PROTOCTL", anope_event_capab); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
@@ -657,6 +658,32 @@ void moduleAddIRCDMsgs(void) {
|
||||
if (UseTokens) {
|
||||
m = createMessage("AG", anope_event_sdesc); addCoreMessage(IRCD,m);
|
||||
}
|
||||
|
||||
m = createMessage("HTM", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("BH", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("HELP", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("4", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("TRACE", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("b", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("LAG", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("AF", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
m = createMessage("RPING", anope_event_null); addCoreMessage(IRCD,m);
|
||||
if (UseTokens) {
|
||||
m = createMessage("AM", anope_event_null); addCoreMessage(IRCD,m);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* The none token version of these is in messages.c */
|
||||
if (UseTokens) {
|
||||
m = createMessage("2", m_stats); addCoreMessage(IRCD,m);
|
||||
@@ -1371,7 +1398,7 @@ void anope_cmd_svsnick(char *source, char *guest, time_t when)
|
||||
if (!source || !guest) {
|
||||
return;
|
||||
}
|
||||
send_cmd(NULL, "%S %s %s :%ld", send_token("SVSNICK", "e"), source,
|
||||
send_cmd(NULL, "%s %s %s :%ld", send_token("SVSNICK", "e"), source,
|
||||
guest, when);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -128,7 +128,7 @@ IRCDCAPAB ircdcap[] = {
|
||||
0, /* TLKEXT */
|
||||
CAPAB_DODKEY, /* DODKEY */
|
||||
CAPAB_DOZIP, /* DOZIP */
|
||||
0}
|
||||
0, 0}
|
||||
};
|
||||
|
||||
|
||||
|
||||
+11
-1
@@ -8,10 +8,20 @@
|
||||
VERSION_MAJOR="1"
|
||||
VERSION_MINOR="7"
|
||||
VERSION_PATCH="5"
|
||||
VERSION_BUILD="364"
|
||||
VERSION_BUILD="365"
|
||||
|
||||
# $Log$
|
||||
#
|
||||
# BUILD : 1.7.5 (365)
|
||||
# BUGS : 172
|
||||
# NOTES : - New directive NewsCount
|
||||
# - fr.l updated
|
||||
# - do_memocheck() globalized the time display
|
||||
# - getmemoinfo() improved to return info about being forbidden
|
||||
# - fixes svsnick on Unreal
|
||||
# - anope_event_null to allow ircd devs to point events that go to no where some where
|
||||
# - fixed SQUIT
|
||||
#
|
||||
# BUILD : 1.7.5 (364)
|
||||
# NOTES : Added nullfix patch from Trystan.
|
||||
#
|
||||
|
||||
Reference in New Issue
Block a user