1
0
mirror of https://github.com/anope/anope.git synced 2026-06-30 08:36:38 +02:00

BUILD : 1.7.5 (376) BUGS : N/A NOTES : CS INFO - DrStein, init.c typo - DrStein, Bahamut +j support - TSL, more protocol clean up

git-svn-id: svn://svn.anope.org/anope/trunk@376 31f1291d-b8d6-0310-a050-a5561fc1590b


git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@246 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
trystan trystan@31f1291d-b8d6-0310-a050-a5561fc1590b
2004-10-07 05:32:21 +00:00
parent a7b79e36cd
commit b1e78499cb
31 changed files with 153 additions and 41 deletions
+2 -2
View File
@@ -16,7 +16,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/05 F Cleaned up how OS/CS CLEAR MODES works [ #00]
10/06 A Bahamut's channel mode +j (join throttle) [ #00]
10/05 A Globalized CS/NS STATUS messages [ #00]
10/02 A Added NewsCount as new feature in services.conf [ #00]
08/28 A CSupport for +I channel mode. [ #00]
@@ -46,7 +46,7 @@ Provided by Trystan <trystan@nomadirc.net> - 2004
08/28 F Buffer preparation for vsnprintf() call. [#158]
Provided by DrStein <gacevedo@anope.org> - 2004
10/05 A NS INFO shows the expire time. [ #00]
10/05 A CS/NS INFO shows the expire time. [ #00]
10/05 A NS GLIST shows the expire time. [ #00]
10/05 F NS GLIST allows the owner of the nick to use the nickname param. [ #00]
09/17 F Fixed MySQL error, whereby checks are only done if mysql is on. [ #00]
+1
View File
@@ -22,6 +22,7 @@ Anope Version S V N
NICK_INFO_EXPIRE
NICK_GLIST_REPLY
NICK_GLIST_REPLY_ADMIN
CHAN_INFO_EXPIRE
*** Mod Strings:
+4 -3
View File
@@ -61,11 +61,12 @@
#define CMODE_t 0x00000020
#define CMODE_k 0x00000040 /* These two used only by ChanServ */
#define CMODE_l 0x00000080
#define CMODE_c 0x00000400 /* Colors can't be used */
#define CMODE_M 0x00000800 /* Non-regged nicks can't send messages */
#define CMODE_O 0x00008000 /* Only opers can join */
#define CMODE_R 0x00000100 /* Only identified users can join */
#define CMODE_r 0x00000200 /* Set for all registered channels */
#define CMODE_c 0x00000400 /* Colors can't be used */
#define CMODE_M 0x00000800 /* Non-regged nicks can't send messages */
#define CMODE_j 0x00001000 /* join throttle */
#define CMODE_O 0x00008000 /* Only opers can join */
#define DEFAULT_MLOCK CMODE_n | CMODE_t | CMODE_r
+2
View File
@@ -24,6 +24,8 @@ E char *uplink;
/* IRC Variables */
E IRCDVar ircd[];
E IRCDCAPAB ircdcap[];
E const char flood_mode_char_set[];
E const char flood_mode_char_remove[];
/**** actions.c ****/
+2
View File
@@ -1416,6 +1416,8 @@ CHAN_INFO_OPT_NONE
Cap
CHAN_INFO_MODE_LOCK
Mode de lock: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Aquest canal no caducara.
+2
View File
@@ -1412,6 +1412,8 @@ CHAN_INFO_OPT_NONE
Keine
CHAN_INFO_MODE_LOCK
Mode lock: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Dieser Channel wird nicht auslaufen.
+2
View File
@@ -1393,6 +1393,8 @@ CHAN_INFO_OPT_NONE
None
CHAN_INFO_MODE_LOCK
Mode lock: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
This channel will not expire.
+3 -1
View File
@@ -603,7 +603,7 @@ NICK_INFO_GREET
NICK_INFO_OPTIONS
Opciones: %s
NICK_INFO_EXPIRE
Expires in: %s
Expira en: %s
# These strings MUST NOT be empty
NICK_INFO_OPT_KILL
Proteccion
@@ -1414,6 +1414,8 @@ CHAN_INFO_OPT_NONE
Ninguno
CHAN_INFO_MODE_LOCK
Modo de lock: %s
CHAN_INFO_EXPIRE
Expira en: %s
CHAN_INFO_NO_EXPIRE
Este canal no expirara.
+2
View File
@@ -1415,6 +1415,8 @@ CHAN_INFO_OPT_NONE
Aucune
CHAN_INFO_MODE_LOCK
Modes maintenus: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Ce channel n'expirera pas.
+2
View File
@@ -1405,6 +1405,8 @@ CHAN_INFO_OPT_NONE
ÊáíÝíá
CHAN_INFO_MODE_LOCK
ÅðéëïãÝò êëåéäþìáôïò: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Áõôü ôï êáíÜëé äåí èá ëÞîåé.
+2
View File
@@ -1403,6 +1403,8 @@ CHAN_INFO_OPT_NONE
Nincs
CHAN_INFO_MODE_LOCK
Rögzített módok: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Ez a csatorna nem fog elévülni.
+2
View File
@@ -1406,6 +1406,8 @@ CHAN_INFO_OPT_NONE
Nessno
CHAN_INFO_MODE_LOCK
Modi bloccati: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Questo canale non scadrà.
+2
View File
@@ -1403,6 +1403,8 @@ CHAN_INFO_OPT_NONE
Geen
CHAN_INFO_MODE_LOCK
Modeslot: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Dit kanaal zal niet verlopen.
+2
View File
@@ -1519,6 +1519,8 @@ CHAN_INFO_OPT_NONE
Brak
CHAN_INFO_MODE_LOCK
Zablokowane tryby: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Ten kana³ nie podlega prawu wygasania.
+2
View File
@@ -1407,6 +1407,8 @@ CHAN_INFO_OPT_NONE
Nenhuma
CHAN_INFO_MODE_LOCK
Trava de modo: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Este canal não irá expirar.
+2
View File
@@ -1401,6 +1401,8 @@ CHAN_INFO_OPT_NONE
Íåò
CHAN_INFO_MODE_LOCK
Áëîêèðîâêà ðåæèìîâ: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Ýòîò êàíàë íèêîãäà íå èñòå÷åò.
+2
View File
@@ -1411,6 +1411,8 @@ CHAN_INFO_OPT_NONE
YOK
CHAN_INFO_MODE_LOCK
Mod kilidi: %s
CHAN_INFO_EXPIRE
Expires in: %s
CHAN_INFO_NO_EXPIRE
Bu kanal için zaman aþýmý söz konusu deðil.
+19 -5
View File
@@ -20,6 +20,10 @@
const char version_protocol[] = "BahamutIRCd 1.4.*/1.8.*";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = "+j"; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = "-j"; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"BahamutIRCd 1.4.*/1.8.*", /* ircd name */
"+o", /* nickserv mode */
@@ -42,7 +46,7 @@ IRCDVar ircd[] = {
"+io", /* Global alias mode */
"+", /* Used by BotServ Bots */
2, /* Chan Max Symbols */
"-ciklmnpstOR", /* Modes to Remove */
"-cilmnpstOR", /* Modes to Remove */
"+o", /* Channel Umode used by Botserv bots */
1, /* SVSNICK */
0, /* Vhost */
@@ -84,9 +88,9 @@ IRCDVar ircd[] = {
0, /* Admin Only */
DEFAULT_MLOCK, /* Default MLOCK */
0, /* Vhost Mode */
0, /* +f */
1, /* +f */
0, /* +L */
0, /* Mode */
CMODE_j, /* Mode */
0, /* Mode */
1,
1, /* No Knock requires +i */
@@ -347,7 +351,7 @@ CBMode cbmodes[128] = {
{0}, /* g */
{0}, /* h */
{CMODE_i, 0, NULL, NULL},
{0}, /* j */
{CMODE_j, 0, set_flood, cs_set_flood}, /* j */
{CMODE_k, 0, set_key, cs_set_key},
{CMODE_l, CBM_MINUS_NO_ARG, set_limit, cs_set_limit},
{CMODE_m, 0, NULL, NULL},
@@ -370,6 +374,7 @@ CBMode cbmodes[128] = {
CBModeInfo cbmodeinfos[] = {
{'c', CMODE_c, 0, NULL, NULL},
{'i', CMODE_i, 0, NULL, NULL},
{'j', CMODE_j, 0, get_flood, cs_get_flood},
{'k', CMODE_k, 0, get_key, cs_get_key},
{'l', CMODE_l, CBM_MINUS_NO_ARG, get_limit, cs_get_limit},
{'m', CMODE_m, 0, NULL, NULL},
@@ -1572,7 +1577,16 @@ int anope_event_admin(char *source, int ac, char **av)
int anope_flood_mode_check(char *value)
{
return 0;
char *dp, *end;
if (value && *value != ':'
&& (strtoul((*value == '*' ? value + 1 : value), &dp, 10) > 0)
&& (*dp == ':') && (*(++dp) != 0) && (strtoul(dp, &end, 10) > 0)
&& (*end == 0)) {
return 1;
} else {
return 0;
}
}
+25 -8
View File
@@ -4815,6 +4815,7 @@ static int do_info(User * u)
const char *commastr = getstring(u->na, COMMA_SPACE);
int is_servadmin = is_services_admin(u);
int show_all = 0;
time_t expt;
if (!chan) {
syntax_error(s_ChanServ, u, "INFO", CHAN_INFO_SYNTAX);
@@ -4953,8 +4954,18 @@ static int do_info(User * u)
}
if ((ci->flags & CI_NO_EXPIRE) && show_all)
if ((ci->flags & CI_NO_EXPIRE) && show_all) {
notice_lang(s_ChanServ, u, CHAN_INFO_NO_EXPIRE);
} else {
if (is_servadmin) {
expt = ci->last_used + CSExpire;
tm = localtime(&expt);
strftime_lang(buf, sizeof(buf), u,
STRFTIME_DATE_TIME_FORMAT, tm);
notice_lang(s_ChanServ, u, CHAN_INFO_EXPIRE, buf);
}
}
if (ci->flags & CI_SUSPENDED) {
notice_lang(s_ChanServ, u, CHAN_X_SUSPENDED, ci->forbidby,
(ci->forbidreason ? ci->
@@ -5727,8 +5738,7 @@ static int do_clear(User * u)
if (c->mode) {
/* Clear modes the bulk of the modes */
anope_cmd_mode(s_ChanServ, c->name, "%s %s",
ircd->modestoremove);
anope_cmd_mode(s_ChanServ, c->name, "%s", ircd->modestoremove);
argv[0] = sstrdup(ircd->modestoremove);
chan_set_modes(s_ChanServ, c, 1, argv, 0);
free(argv[0]);
@@ -5750,11 +5760,18 @@ static int do_clear(User * u)
free(argv[0]);
}
if (ircd->fmode && c->flood) {
anope_cmd_mode(s_ChanServ, c->name, "-f %s", c->flood);
argv[0] = sstrdup("-f");
argv[1] = c->flood;
chan_set_modes(s_ChanServ, c, 2, argv, 0);
free(argv[0]);
if (flood_mode_char_remove) {
anope_cmd_mode(s_ChanServ, c->name, "%s %s",
flood_mode_char_remove, c->flood);
argv[0] = sstrdup(flood_mode_char_remove);
argv[1] = c->flood;
chan_set_modes(s_ChanServ, c, 2, argv, 0);
free(argv[0]);
} else {
if (debug) {
alog("debug: flood_mode_char_remove was not set unable to remove flood/throttle modes");
}
}
}
}
+4
View File
@@ -18,6 +18,10 @@
const char version_protocol[] = "DreamForge 4.6.7";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = ""; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = ""; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"DreamForge 4.6.7", /* ircd name */
"+o", /* nickserv mode */
+5
View File
@@ -18,6 +18,11 @@
const char version_protocol[] = "Hybrid IRCd 7.0";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = ""; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = ""; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"HybridIRCd 7.*", /* ircd name */
"+o", /* nickserv mode */
+9 -9
View File
@@ -591,35 +591,35 @@ int init(int ac, char **av)
if (!skeleton) {
load_ns_dbase();
if (debug)
alog("debug: Loaded %s database (1/9)", s_NickServ);
alog("debug: Loaded %s database (1/8)", s_NickServ);
if (s_HostServ) {
load_hs_dbase();
if (debug)
alog("debug: Loaded %s database (2/9)", s_HostServ);
alog("debug: Loaded %s database (2/8)", s_HostServ);
}
if (s_BotServ) {
load_bs_dbase();
if (debug)
alog("debug: Loaded %s database (3/9)", s_BotServ);
alog("debug: Loaded %s database (3/8)", s_BotServ);
} else if (debug)
alog("debug: BotServ database (4/9) not loaded because BotServ is disabled");
alog("debug: BotServ database (3/8) not loaded because BotServ is disabled");
load_cs_dbase();
if (debug)
alog("debug: Loaded %s database (5/9)", s_ChanServ);
alog("debug: Loaded %s database (4/8)", s_ChanServ);
}
load_os_dbase();
if (debug)
alog("debug: Loaded %s database (6/9)", s_OperServ);
alog("debug: Loaded %s database (5/8)", s_OperServ);
load_news();
if (debug)
alog("debug: Loaded news database (7/9)");
alog("debug: Loaded news database (6/8)");
load_exceptions();
if (debug)
alog("debug: Loaded exception database (8/9)");
alog("debug: Loaded exception database (7/8)");
if (PreNickDBName) {
load_ns_req_db();
if (debug)
alog("debug: Loaded PreNick database (9/9)");
alog("debug: Loaded PreNick database (8/8)");
}
#ifdef USE_RDB
}
+13 -7
View File
@@ -1670,8 +1670,7 @@ static int do_clearmodes(User * u)
if (c->mode) {
/* Clear modes the bulk of the modes */
anope_cmd_mode(s_OperServ, c->name, "%s %s",
ircd->modestoremove);
anope_cmd_mode(s_OperServ, c->name, "%s", ircd->modestoremove);
argv[0] = sstrdup(ircd->modestoremove);
chan_set_modes(s_OperServ, c, 1, argv, 0);
free(argv[0]);
@@ -1693,11 +1692,18 @@ static int do_clearmodes(User * u)
free(argv[0]);
}
if (ircd->fmode && c->flood) {
anope_cmd_mode(s_OperServ, c->name, "-f %s", c->flood);
argv[0] = sstrdup("-f");
argv[1] = c->flood;
chan_set_modes(s_OperServ, c, 2, argv, 0);
free(argv[0]);
if (flood_mode_char_remove) {
anope_cmd_mode(s_ChanServ, c->name, "%s %s",
flood_mode_char_remove, c->flood);
argv[0] = sstrdup(flood_mode_char_remove);
argv[1] = c->flood;
chan_set_modes(s_ChanServ, c, 2, argv, 0);
free(argv[0]);
} else {
if (debug) {
alog("debug: flood_mode_char_remove was not set unable to remove flood/throttle modes");
}
}
}
}
+6 -1
View File
@@ -18,6 +18,11 @@
const char version_protocol[] = "PTlink 6.14.5+";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = "+f"; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = "-f"; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"PTlinkIRCd 6.14.*", /* ircd name */
"+o", /* nickserv mode */
@@ -40,7 +45,7 @@ IRCDVar ircd[] = {
"+io", /* Global alias mode */
"+", /* Used by BotServ Bots */
2, /* Chan Max Symbols */
"-inpsmtCRKOASdcqBNfkl", /* Modes to Remove */
"-inpsmtCRKOASdcqBNl", /* Modes to Remove */
"+ao", /* Channel Umode used by Botserv bots */
1, /* SVSNICK */
1, /* Vhost */
+6 -1
View File
@@ -18,6 +18,11 @@
const char version_protocol[] = "RageIRCd 2.0.x";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = ""; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = ""; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"RageIRCd 2.0.*", /* ircd name */
"+d", /* nickserv mode */
@@ -40,7 +45,7 @@ IRCDVar ircd[] = {
"+io", /* Global alias mode */
"+", /* Used by BotServ Bots */
3, /* Chan Max Symbols */
"-iklmnpRstcOACNM", /* Modes to Remove */
"-ilmnpRstcOACNM", /* Modes to Remove */
"+o", /* Channel Umode used by Botserv bots */
1, /* SVSNICK */
1, /* Vhost */
+5 -1
View File
@@ -18,6 +18,10 @@
const char version_protocol[] = "UltimateIRCd 2.8.2+";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = "+f"; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = "-f"; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"UltimateIRCd 2.8.*", /* ircd name */
"+S", /* nickserv mode */
@@ -40,7 +44,7 @@ IRCDVar ircd[] = {
"+ioS", /* Global alias mode */
"+pS", /* Used by BotServ Bots */
3, /* Chan Max Symbols */
"-kiflmnpstxAIKLORS", /* Modes to Remove */
"-ilmnpstxAIKORS", /* Modes to Remove */
"+ao", /* Channel Umode used by Botserv bots */
1, /* SVSNICK */
1, /* Vhost */
+6 -1
View File
@@ -18,6 +18,11 @@
const char version_protocol[] = "UltimateIRCd 3.0.0.a26+";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = ""; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = ""; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"UltimateIRCd 3.0.*", /* ircd name */
"+S", /* nickserv mode */
@@ -40,7 +45,7 @@ IRCDVar ircd[] = {
"+io", /* Global alias mode */
"+S", /* Used by BotServ Bots */
5, /* Chan Max Symbols */
"-iklmnpqstRKAO", /* Modes to Remove */
"-ilmnpqstRKAO", /* Modes to Remove */
"+ao", /* Channel Umode used by Botserv bots */
1, /* SVSNICK */
1, /* Vhost */
+5 -1
View File
@@ -20,6 +20,10 @@
const char version_protocol[] = "UnrealIRCd 3.1.1+";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = "+f"; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = "-f"; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"UnrealIRCd 3.1.x", /* ircd name */
"+oS", /* nickserv mode */
@@ -42,7 +46,7 @@ IRCDVar ircd[] = {
"+ioS", /* Global alias mode */
"+qS", /* Used by BotServ Bots */
5, /* Chan Max Symbols */
"-ckiflmnpstuzACGHKLNOQRSV", /* Modes to Remove */
"-cilmnpstuzACGHKNOQRSV", /* Modes to Remove */
"+ao", /* Channel Umode used by Botserv bots */
1, /* SVSNICK */
1, /* Vhost */
+5
View File
@@ -20,6 +20,10 @@
const char version_protocol[] = "UnrealIRCd 3.2+";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = "+f"; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = "-f"; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"UnrealIRCd 3.2.x", /* ircd name */
"+oS", /* nickserv mode */
@@ -452,6 +456,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("401", NULL); addCoreMessage(IRCD,m);
m = createMessage("436", anope_event_436); addCoreMessage(IRCD,m);
m = createMessage("451", anope_event_null); addCoreMessage(IRCD,m);
m = createMessage("AWAY", anope_event_away); addCoreMessage(IRCD,m);
if (UseTokens) {
m = createMessage("6", anope_event_away); addCoreMessage(IRCD,m);
+4
View File
@@ -18,6 +18,10 @@
const char version_protocol[] = "ViagraIRCd 1.3.x";
/* Not all ircds use +f for their flood/join throttle system */
const char flood_mode_char_set[] = ""; /* mode char for FLOOD mode on set */
const char flood_mode_char_remove[] = ""; /* mode char for FLOOD mode on remove */
IRCDVar ircd[] = {
{"ViagraIRCd 1.3.*", /* ircd name */
"+oS", /* nickserv mode */
+5 -1
View File
@@ -8,10 +8,14 @@
VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="5"
VERSION_BUILD="375"
VERSION_BUILD="376"
# $Log$
#
# BUILD : 1.7.5 (376)
# BUGS : N/A
# NOTES : CS INFO - DrStein, init.c typo - DrStein, Bahamut +j support - TSL, more protocol clean up
#
# BUILD : 1.7.5 (375)
# BUGS :
# NOTES : Fixed Changes files errors.