diff options
-rw-r--r-- | Changes | 4 | ||||
-rw-r--r-- | Changes.lang | 1 | ||||
-rw-r--r-- | include/bahamut.h | 5 | ||||
-rw-r--r-- | include/extern.h | 2 | ||||
-rw-r--r-- | lang/cat.l | 2 | ||||
-rw-r--r-- | lang/de.l | 2 | ||||
-rw-r--r-- | lang/en_us.l | 2 | ||||
-rw-r--r-- | lang/es.l | 4 | ||||
-rw-r--r-- | lang/fr.l | 2 | ||||
-rw-r--r-- | lang/gr.l | 2 | ||||
-rw-r--r-- | lang/hun.l | 2 | ||||
-rw-r--r-- | lang/it.l | 2 | ||||
-rw-r--r-- | lang/nl.l | 2 | ||||
-rw-r--r-- | lang/pl.l | 2 | ||||
-rw-r--r-- | lang/pt.l | 2 | ||||
-rw-r--r-- | lang/ru.l | 2 | ||||
-rw-r--r-- | lang/tr.l | 2 | ||||
-rw-r--r-- | src/bahamut.c | 24 | ||||
-rw-r--r-- | src/chanserv.c | 33 | ||||
-rw-r--r-- | src/dreamforge.c | 4 | ||||
-rw-r--r-- | src/hybrid.c | 5 | ||||
-rw-r--r-- | src/init.c | 18 | ||||
-rw-r--r-- | src/operserv.c | 20 | ||||
-rw-r--r-- | src/ptlink.c | 7 | ||||
-rw-r--r-- | src/rageircd.c | 7 | ||||
-rw-r--r-- | src/ultimate2.c | 6 | ||||
-rw-r--r-- | src/ultimate3.c | 7 | ||||
-rw-r--r-- | src/unreal31.c | 6 | ||||
-rw-r--r-- | src/unreal32.c | 5 | ||||
-rw-r--r-- | src/viagra.c | 4 | ||||
-rw-r--r-- | version.log | 6 |
31 files changed, 152 insertions, 40 deletions
@@ -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] diff --git a/Changes.lang b/Changes.lang index c907a4348..1a078da3b 100644 --- a/Changes.lang +++ b/Changes.lang @@ -22,6 +22,7 @@ Anope Version S V N NICK_INFO_EXPIRE NICK_GLIST_REPLY NICK_GLIST_REPLY_ADMIN + CHAN_INFO_EXPIRE *** Mod Strings: diff --git a/include/bahamut.h b/include/bahamut.h index 78cefe1f9..691342a79 100644 --- a/include/bahamut.h +++ b/include/bahamut.h @@ -61,11 +61,12 @@ #define CMODE_t 0x00000020 #define CMODE_k 0x00000040 /* These two used only by ChanServ */ #define CMODE_l 0x00000080 +#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 CMODE_R 0x00000100 /* Only identified users can join */ -#define CMODE_r 0x00000200 /* Set for all registered channels */ #define DEFAULT_MLOCK CMODE_n | CMODE_t | CMODE_r diff --git a/include/extern.h b/include/extern.h index ce496b325..ae727cdcb 100644 --- a/include/extern.h +++ b/include/extern.h @@ -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 ****/ diff --git a/lang/cat.l b/lang/cat.l index 6777acc8b..53f49ac39 100644 --- a/lang/cat.l +++ b/lang/cat.l @@ -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. @@ -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. diff --git a/lang/en_us.l b/lang/en_us.l index 01a36c14a..0dd815428 100644 --- a/lang/en_us.l +++ b/lang/en_us.l @@ -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. @@ -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. @@ -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. @@ -1405,6 +1405,8 @@ CHAN_INFO_OPT_NONE ÊáíÝíá CHAN_INFO_MODE_LOCK ÅðéëïãÝò êëåéäþìáôïò: %s +CHAN_INFO_EXPIRE + Expires in: %s CHAN_INFO_NO_EXPIRE Áõôü ôï êáíÜëé äåí èá ëÞîåé. diff --git a/lang/hun.l b/lang/hun.l index b7375d732..d577b368a 100644 --- a/lang/hun.l +++ b/lang/hun.l @@ -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. @@ -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à. @@ -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. @@ -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. @@ -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. @@ -1401,6 +1401,8 @@ CHAN_INFO_OPT_NONE Íåò CHAN_INFO_MODE_LOCK Áëîêèðîâêà ðåæèìîâ: %s +CHAN_INFO_EXPIRE + Expires in: %s CHAN_INFO_NO_EXPIRE Ýòîò êàíàë íèêîãäà íå èñòå÷åò. @@ -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. diff --git a/src/bahamut.c b/src/bahamut.c index 032268aae..e9e395293 100644 --- a/src/bahamut.c +++ b/src/bahamut.c @@ -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; + } } diff --git a/src/chanserv.c b/src/chanserv.c index 731e5262c..bddb03483 100644 --- a/src/chanserv.c +++ b/src/chanserv.c @@ -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"); + } + } } } diff --git a/src/dreamforge.c b/src/dreamforge.c index 91c23239b..43cd4532a 100644 --- a/src/dreamforge.c +++ b/src/dreamforge.c @@ -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 */ diff --git a/src/hybrid.c b/src/hybrid.c index 7947173e2..637c05db0 100644 --- a/src/hybrid.c +++ b/src/hybrid.c @@ -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 */ diff --git a/src/init.c b/src/init.c index 486c54e82..7843e9d77 100644 --- a/src/init.c +++ b/src/init.c @@ -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 } diff --git a/src/operserv.c b/src/operserv.c index aa92125b2..7e3864539 100644 --- a/src/operserv.c +++ b/src/operserv.c @@ -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"); + } + } } } diff --git a/src/ptlink.c b/src/ptlink.c index ef4dfe42c..acab8a7a0 100644 --- a/src/ptlink.c +++ b/src/ptlink.c @@ -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 */ diff --git a/src/rageircd.c b/src/rageircd.c index 6d67bfa2a..555cf58db 100644 --- a/src/rageircd.c +++ b/src/rageircd.c @@ -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 */ diff --git a/src/ultimate2.c b/src/ultimate2.c index 51cb1bed0..267c60ca3 100644 --- a/src/ultimate2.c +++ b/src/ultimate2.c @@ -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 */ diff --git a/src/ultimate3.c b/src/ultimate3.c index 792db3902..dcde5b3a3 100644 --- a/src/ultimate3.c +++ b/src/ultimate3.c @@ -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 */ diff --git a/src/unreal31.c b/src/unreal31.c index d948c09a4..89aca79d6 100644 --- a/src/unreal31.c +++ b/src/unreal31.c @@ -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 */ diff --git a/src/unreal32.c b/src/unreal32.c index 062a57caf..43054628e 100644 --- a/src/unreal32.c +++ b/src/unreal32.c @@ -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); diff --git a/src/viagra.c b/src/viagra.c index a9f621888..260915c09 100644 --- a/src/viagra.c +++ b/src/viagra.c @@ -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 */ diff --git a/version.log b/version.log index 64ab92ef5..f4f734261 100644 --- a/version.log +++ b/version.log @@ -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. |