diff options
-rw-r--r-- | Changes | 3 | ||||
-rw-r--r-- | Changes.lang | 3 | ||||
-rw-r--r-- | data/example.conf | 5 | ||||
-rw-r--r-- | include/solidircd.h | 2 | ||||
-rw-r--r-- | lang/cat.l | 15 | ||||
-rw-r--r-- | lang/de.l | 16 | ||||
-rw-r--r-- | lang/en_us.l | 9 | ||||
-rw-r--r-- | lang/es.l | 15 | ||||
-rw-r--r-- | lang/fr.l | 16 | ||||
-rw-r--r-- | lang/gr.l | 15 | ||||
-rw-r--r-- | lang/hun.l | 16 | ||||
-rw-r--r-- | lang/it.l | 16 | ||||
-rw-r--r-- | lang/nl.l | 16 | ||||
-rw-r--r-- | lang/pl.l | 15 | ||||
-rw-r--r-- | lang/pt.l | 15 | ||||
-rw-r--r-- | lang/ru.l | 15 | ||||
-rw-r--r-- | lang/tr.l | 15 | ||||
-rw-r--r-- | src/nickserv.c | 5 | ||||
-rw-r--r-- | src/operserv.c | 35 | ||||
-rw-r--r-- | src/solidircd.c | 4 | ||||
-rw-r--r-- | src/unreal32.c | 6 | ||||
-rw-r--r-- | version.log | 11 |
22 files changed, 257 insertions, 11 deletions
@@ -7,6 +7,8 @@ Provided by Anope Dev. <dev@anope.org> - 2004 11/19 F Wrong string and missing registered nick check in bot change. [#221] Provided by Trystan <trystan@nomadirc.net> - 2004 +11/28 A Support for Unreal's version of SVSHOLD [ #00] +11/28 A /OS SET LIST to list the set options [ #00] 11/27 A Solid IRCD support (Solid IRCD 3.4.6 or later) [ #00] 11/27 A Exceptions now update if the limit is different [ #00] 11/27 A Segfaults logged to the services log when DumpCore is disabled [ #00] @@ -14,6 +16,7 @@ Provided by Trystan <trystan@nomadirc.net> - 2004 11/21 A Opened SGLINE to all ircd that support GEOS bans [ #00] 11/21 A Opened SZLINE to all ircd that support ZLINE's [ #00] 11/19 A Added anope_cmd_ctcp() to code API, for sending CTCP messages. [ #00] +11/28 F NSSecureAdmins now restricts /NS SET EMAIL [#218] 11/27 F Compiles and Runs under CYGWIN again [ #00] 11/27 F bot_raw_mode() would cause a TSMODE warning [#234] 11/27 F do_kil() not removing users from the user list [#222] diff --git a/Changes.lang b/Changes.lang index d6b5adfcb..97243393e 100644 --- a/Changes.lang +++ b/Changes.lang @@ -12,6 +12,9 @@ Anope Version S V N OPER_SET_SQL_ERROR_INIT OPER_EXCEPTION_EXISTS OPER_EXCEPTION_CHANGED + OPER_SET_LIST_OPTION_ON + OPER_SET_LIST_OPTION_OFF + OPER_HELP_SET_LIST *** Mod Strings: diff --git a/data/example.conf b/data/example.conf index f910fe2b0..1d865918c 100644 --- a/data/example.conf +++ b/data/example.conf @@ -209,8 +209,8 @@ HostServDB hosts.db # HelpChannel <channel> [OPTIONAL] # -# When defined, every users that got op on this channel automatically -# receive the +h user mode. +# When defined, every users that has or gets op status on this channel +# automatically receive the +h user mode. HelpChannel "#help" @@ -461,6 +461,7 @@ GlobalOnCycleUP "Services are now back online - have a nice day" # places a temporary Q:Line instead of introducing a new nick, # which is better for both CPU and bandwidth. If you enable this # option on a pre-1.4.35 Bahamut, it is most likely to break. +# This option now works with Unreal 3.2 #UseSVSHOLD # RestrictOperNick [OPTIONAL] diff --git a/include/solidircd.h b/include/solidircd.h index 6225885ea..ac34de13c 100644 --- a/include/solidircd.h +++ b/include/solidircd.h @@ -70,8 +70,10 @@ #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_S 0x00002000 /* SSL only */ #define CMODE_O 0x00008000 /* Only opers can join */ + #define DEFAULT_MLOCK CMODE_n | CMODE_t | CMODE_r #endif diff --git a/lang/cat.l b/lang/cat.l index d2bc618d6..eef4dc66c 100644 --- a/lang/cat.l +++ b/lang/cat.l @@ -2687,6 +2687,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5628,6 +5632,17 @@ OPER_HELP_SET_SUPERADMIN This opion is _NOT_ persistant, and should only be used when needed, and set back to OFF when no longer needed. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Sintàxi: NOOP SET servidor @@ -2677,6 +2677,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5829,6 +5833,18 @@ OPER_HELP_SET_SUPERADMIN werden, wenn er wirklich gebraucht wird. Danach sollte er sofort wieder ausgeschaltet werden. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings + OPER_HELP_NOOP Syntax: NOOP SET Server NOOP REVOKE Server diff --git a/lang/en_us.l b/lang/en_us.l index 70b12fc6f..6dde59186 100644 --- a/lang/en_us.l +++ b/lang/en_us.l @@ -2618,6 +2618,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5413,6 +5417,11 @@ OPER_HELP_SET_SQL be used to disable and enable SQL should your SQL server go down while services are running. +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings + OPER_HELP_NOOP Syntax: NOOP SET server NOOP REVOKE server @@ -2666,6 +2666,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5617,6 +5621,17 @@ OPER_HELP_SET_SUPERADMIN Esta opcion no es persistente y debe ser usada solo de ser necesario. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Sintaxis: NOOP SET servidor @@ -2698,6 +2698,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5653,6 +5657,18 @@ OPER_HELP_SET_SUPERADMIN Utilisation temporaire. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings + OPER_HELP_NOOP Syntaxe: NOOP SET serveur NOOP REVOKE serveur @@ -2676,6 +2676,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5527,6 +5531,17 @@ OPER_HELP_SET_SUPERADMIN This opion is _NOT_ persistant, and should only be used when needed, and set back to OFF when no longer needed. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Óýíôáîç: NOOP SET server diff --git a/lang/hun.l b/lang/hun.l index 4d67fb930..0654062e0 100644 --- a/lang/hun.l +++ b/lang/hun.l @@ -2639,6 +2639,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP válaszok OPER_NOOP_SYNTAX @@ -5421,6 +5425,18 @@ OPER_HELP_SET_SUPERADMIN Ez az opció nem ajánlott, csak akkor használd, ha szükséges és kapcsold ki, ha már nem. + +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Syntax: NOOP SET szerver @@ -2683,6 +2683,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5674,6 +5678,18 @@ OPER_HELP_SET_SUPERADMIN Questa opzione NON è persistente, e dovrebbe essere usata solo quando necessario, e reimpostata a OFF al più presto. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings + OPER_HELP_NOOP Sintassi: NOOP SET server NOOP REVOKE server @@ -2653,6 +2653,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5548,6 +5552,18 @@ OPER_HELP_SET_SUPERADMIN wanneer het echt nodig is, en terug op OFF gezet worden als het niet meer nodig is. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings + OPER_HELP_NOOP Gebruik: NOOP SET server NOOP REVOKE server @@ -2867,6 +2867,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5974,6 +5978,17 @@ OPER_HELP_SET_SUPERADMIN This option is not persistant, and should only be used when needed, and set back to OFF when no longer needed. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Syntax: NOOP SET server @@ -2678,6 +2678,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5313,6 +5317,17 @@ OPER_HELP_SET_SUPERADMIN This opion is _NOT_ persistant, and should only be used when needed, and set back to OFF when no longer needed. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Sintaxe: NOOP SET servidor @@ -2650,6 +2650,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5446,6 +5450,17 @@ OPER_HELP_SET_SUPERADMIN Ýòà îïöèÿ íå ïîñòîÿííàÿ, è äîëæíà èñïîëüçîâàòüñÿ òîëüêî ïðè êðàéíåé íåîáõîäèìîñòè, óñòàíîâèòå åå â OFF êàê òîëüêî ïåðåñòàíåòå íóæäàòüñÿ â íåé. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Ñèíòàêñèñ: NOOP SET ñåðâåð @@ -2681,6 +2681,10 @@ OPER_SET_SQL_ERROR Setting for SQL must be ON or OFF. OPER_SET_SQL_ERROR_INIT Error during init of SQL, check your logs to correct. +OPER_SET_LIST_OPTION_ON + %s is enable +OPER_SET_LIST_OPTION_OFF + %s is disabled # NOOP responses OPER_NOOP_SYNTAX @@ -5477,6 +5481,17 @@ OPER_HELP_SET_SUPERADMIN This opion is _NOT_ persistant, and should only be used when needed, and set back to OFF when no longer needed. +OPER_HELP_SET_SQL + Syntax: SET SQL {ON | OFF} + + Setting this will toggle Anope's from usage of SQL, this should + be used to disable and enable SQL should your SQL server go down + while services are running. + +OPER_HELP_SET_LIST + Syntax: SET LIST + + Display the various OperServ settings OPER_HELP_NOOP Kullanýmý: NOOP SET server diff --git a/src/nickserv.c b/src/nickserv.c index e025b8f75..d853464af 100644 --- a/src/nickserv.c +++ b/src/nickserv.c @@ -3010,6 +3010,11 @@ static int do_set_email(User * u, NickCore * nc, char *param) if (!param && NSForceEmail) { notice_lang(s_NickServ, u, NICK_SET_EMAIL_UNSET_IMPOSSIBLE); return MOD_CONT; + } else if (NSSecureAdmins && u->na->nc != nc + && nick_is_services_admin(nc) + && !is_services_root(u)) { + notice_lang(s_NickServ, u, PERMISSION_DENIED); + return MOD_CONT; } else if (param && !MailValidate(param)) { notice_lang(s_NickServ, u, MAIL_X_INVALID, param); return MOD_CONT; diff --git a/src/operserv.c b/src/operserv.c index fcc567541..900a828fb 100644 --- a/src/operserv.c +++ b/src/operserv.c @@ -169,6 +169,7 @@ void moduleAddOperServCmds(void) { /* Commands for Services admins: */ c = createCommand("SET", do_set, is_services_admin,OPER_HELP_SET, -1,-1,-1,-1); addCoreCommand(OPERSERV,c); + c = createCommand("SET LIST", NULL, NULL,OPER_HELP_SET_LIST, -1,-1,-1,-1); addCoreCommand(OPERSERV,c); c = createCommand("SET READONLY", NULL, NULL,OPER_HELP_SET_READONLY, -1,-1,-1,-1); addCoreCommand(OPERSERV,c); c = createCommand("SET LOGCHAN", NULL, NULL,OPER_HELP_SET_LOGCHAN, -1,-1,-1,-1); addCoreCommand(OPERSERV,c); c = createCommand("SET DEBUG", NULL, NULL,OPER_HELP_SET_DEBUG, -1,-1,-1,-1); addCoreCommand(OPERSERV,c); @@ -4455,10 +4456,37 @@ static int do_set(User * u) { char *option = strtok(NULL, " "); char *setting = strtok(NULL, " "); + int index; - if (!option || !setting) { + if (!option) { + syntax_error(s_OperServ, u, "SET", OPER_SET_SYNTAX); + } else if (stricmp(option, "LIST") == 0) { + index = + (allow_ignore ? OPER_SET_LIST_OPTION_ON : + OPER_SET_LIST_OPTION_OFF); + notice_lang(s_OperServ, u, index, "IGNORE"); + index = + (readonly ? OPER_SET_LIST_OPTION_ON : + OPER_SET_LIST_OPTION_OFF); + notice_lang(s_OperServ, u, index, "READONLY"); + index = + (logchan ? OPER_SET_LIST_OPTION_ON : OPER_SET_LIST_OPTION_OFF); + notice_lang(s_OperServ, u, index, "LOGCHAN"); + index = + (debug ? OPER_SET_LIST_OPTION_ON : OPER_SET_LIST_OPTION_OFF); + notice_lang(s_OperServ, u, index, "DEBUG"); + index = + (noexpire ? OPER_SET_LIST_OPTION_ON : + OPER_SET_LIST_OPTION_OFF); + notice_lang(s_OperServ, u, index, "NOEXPIRE"); +#ifdef USE_MYSQL + index = + (do_mysql ? OPER_SET_LIST_OPTION_ON : + OPER_SET_LIST_OPTION_OFF); + notice_lang(s_OperServ, u, index, "SQL"); +#endif + } else if (!setting) { syntax_error(s_OperServ, u, "SET", OPER_SET_SYNTAX); - } else if (stricmp(option, "IGNORE") == 0) { if (stricmp(setting, "on") == 0) { allow_ignore = 1; @@ -4515,11 +4543,11 @@ static int do_set(User * u) alog("Now sending log messages to %s", LogChannel); notice_lang(s_OperServ, u, OPER_SET_LOGCHAN_ON, LogChannel); } else if (LogChannel && (stricmp(setting, "off") == 0)) { + alog("No longer sending log messages to a channel"); if (ircd->join2msg) { anope_cmd_part(s_GlobalNoticer, LogChannel, NULL); } logchan = 0; - alog("No longer sending log messages to a channel"); notice_lang(s_OperServ, u, OPER_SET_LOGCHAN_OFF); } else { notice_lang(s_OperServ, u, OPER_SET_LOGCHAN_ERROR); @@ -4577,7 +4605,6 @@ static int do_set(User * u) } else { notice_lang(s_OperServ, u, OPER_SET_NOEXPIRE_ERROR); } - } else { notice_lang(s_OperServ, u, OPER_SET_UNKNOWN_OPTION, option); } diff --git a/src/solidircd.c b/src/solidircd.c index 4dd736d28..d03d42e4d 100644 --- a/src/solidircd.c +++ b/src/solidircd.c @@ -60,7 +60,7 @@ IRCDVar ircd[] = { 1, /* Supports SGlines */ 1, /* Supports SQlines */ 1, /* Supports SZlines */ - 0, /* Supports Halfop +h */ + 1, /* Supports Halfop +h */ 3, /* Number of server args */ 0, /* Join 2 Set */ 0, /* Join 2 Message */ @@ -364,7 +364,7 @@ CBMode cbmodes[128] = { {0}, /* P */ {0}, /* Q */ {CMODE_R, 0, NULL, NULL}, /* R */ - {0}, /* S */ + {CMODE_S, 0, NULL, NULL}, /* S */ {0}, /* T */ {0}, /* U */ {0}, /* V */ diff --git a/src/unreal32.c b/src/unreal32.c index ae06b3fb2..90915071b 100644 --- a/src/unreal32.c +++ b/src/unreal32.c @@ -1886,13 +1886,15 @@ int anope_event_whois(char *source, int ac, char **av) /* SVSHOLD - set */ void anope_cmd_svshold(char *nick) { - /* Not supported by this IRCD */ + send_cmd(NULL, "TKL + Q H %s %s %ld %ld :%s", nick, ServerName, + (long int) time(NULL) + NSReleaseTimeout, + (long int) time(NULL), "Being held for registered user"); } /* SVSHOLD - release */ void anope_cmd_release_svshold(char *nick) { - /* Not Supported by this IRCD */ + send_cmd(NULL, "TKL - Q * %s %s", nick, ServerName); } /* UNSGLINE */ diff --git a/version.log b/version.log index b0dbaec7b..f86687413 100644 --- a/version.log +++ b/version.log @@ -8,10 +8,19 @@ VERSION_MAJOR="1" VERSION_MINOR="7" VERSION_PATCH="6" -VERSION_BUILD="464" +VERSION_BUILD="465" # $Log$ # +# BUILD : 1.7.6 (465) +# BUGS : 218, 235 +# NOTES : 1. correct the grammer in the example.conf +# 2. SolidIRCD cmode +S +# 3. NSSecureAdmins now restricts /NS SET EMAIL +# 4. Unreals version of SVSHOLD +# 5. SolidIRCD halfop support +# 6. /os set list +# # BUILD : 1.7.6 (464) # BUGS : N/A # NOTES : gcc 2.x compiler errors |