1
0
mirror of https://github.com/anope/anope.git synced 2026-06-27 16:46:39 +02:00

BUILD : 1.7.6 (489) BUGS : 244, 246, 247, 248, 249, 250, 251, 252, 254, 255 NOTES : 1. In some cases READONLY was not respected, and data was saved. 2. Corrected a few mistakes in example.conf. 3. Wrong column type in tables.sql for nick alias status fiag. 4. listchans and listnicks work under Cygwin. 5. NickRegDelay no longer accepts negative values. 6. -is44 option not show if converter not built. 7. Removed #ifndef STREAMLINE from the code as its no longer set during build time 8. MS MAX LIMIT was set incorrectly 9. Segfault if USERDB enabled and tables does not exist 10. Provides clear message of SUPERADMIN is not enabled

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


git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@343 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
trystan trystan@31f1291d-b8d6-0310-a050-a5561fc1590b
2004-12-19 17:42:17 +00:00
parent fb2191240c
commit ada71328a9
32 changed files with 173 additions and 66 deletions
+11
View File
@@ -13,6 +13,14 @@ Provided by Anope Dev. <dev@anope.org> - 2004
11/19 A Added anope_cmd_ctcp() to code API, for sending CTCP messages. [ #00]
11/18 A Unable to use registered nicknames as bot nicks from now on. [ #00]
11/18 A NSAddAccessOnReg to control access list on registration. [ #00]
12/19 F Segfault if USERDB enabled and tables don't exist [#255]
12/18 F Now only builds the ircd you selected. [ #00]
12/17 F In some cases READONLY was not respected, and data was saved. [#244]
12/17 F Corrected a few mistakes in example.conf. [#251]
12/17 F Wrong column type in tables.sql for nick alias status fiag. [#248]
12/17 F listchans and listnicks work under Cygwin. [#247]
12/17 F NickRegDelay no longer accepts negative values. [#250]
12/17 F -is44 option not show if converter not built. [#249]
12/11 F Fixed possible crashbug (NULL-free) in nickserv's delcore(). [ #00]
12/09 F Hybrid crash on unsetting registration mode. [ #00]
12/09 F BotServ !seen not recognizing founder. [#167]
@@ -54,6 +62,9 @@ Provided by DrStein <gacevedo@anope.org> - 2004
11/23 F Moving Services Operators to Services Admins and vice-versa. [#230]
11/22 F HelpChan +h mode not being given if status was greater then op. [#223]
Provided by Jens Hoffrichter <joho@nickstories.de> - 2004
12/17 F Provides clear message of SUPERADMIN is not enabled. [#246]
Anope Version 1.7.6
-------------------
Provided by Anope Dev. <dev@anope.org> - 2004
+1
View File
@@ -15,6 +15,7 @@ Anope Version S V N
OPER_SET_LIST_OPTION_ON
OPER_SET_LIST_OPTION_OFF
OPER_HELP_SET_LIST
OPER_SUPER_ADMIN_NOT_ENABLED
*** Mod Strings:
+2 -1
View File
@@ -16,6 +16,7 @@ MYSQL=@MYSQL@
RDB=@RDB@
LDFLAGS=@LDFLAGS@
RUNGROUP=@RUNGROUP@
IRCDFILE=@IRCDFILE@
all: language headers build modules
strict: language headers strict_build strict_modules
@@ -25,7 +26,7 @@ MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'ANOPELIBS=${ANOPELIBS}' \
'INCLUDEDIR=${INCLUDEDIR}' 'RM=${RM}' 'CP=${CP}' \
'TOUCH=${TOUCH}' 'SHELL=${SHELL}' 'DATDEST=${DATDEST}' \
'RUNGROUP=${RUNGROUP}' 'MODULE_PATH=${MODULE_PATH}' 'RDB=${RDB}'\
'MYSQL=${MYSQL}'
'MYSQL=${MYSQL}' 'IRCDFILE=${IRCDFILE}'
build:
@for i in $(SUBDIRS); do \
Vendored
+23 -8
View File
@@ -309,7 +309,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT RM CP TOUCH INSTALL CPP EGREP MYSQL RDB MYSQLCLIENT_LDFLAGS MYSQLCLIENT_CFLAGS MYSQLCLIENT_LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os acx_pthread_config PTHREAD_CC PTHREAD_LIBS PTHREAD_CFLAGS ANOPELIBS RUNGROUP BINDEST DATDEST MODULE_PATH LIBOBJS LTLIBOBJS'
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT RM CP TOUCH INSTALL CPP EGREP MYSQL RDB MYSQLCLIENT_LDFLAGS MYSQLCLIENT_CFLAGS MYSQLCLIENT_LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os acx_pthread_config PTHREAD_CC PTHREAD_LIBS PTHREAD_CFLAGS ANOPELIBS RUNGROUP BINDEST DATDEST MODULE_PATH IRCDFILE LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -8513,72 +8513,86 @@ fi;
if test "${with_ircd+set}" = set; then
withval="$with_ircd"
if test "$withval" = "IRC_DREAMFORGE"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_DREAMFORGE 1
_ACEOF
elif test "$withval" = "IRC_BAHAMUT"; then
if test "$withval" = "IRC_BAHAMUT"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_BAHAMUT 1
_ACEOF
IRCDFILE=" bahamut.c "
elif test "$withval" = "IRC_UNREAL31"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_UNREAL31 1
_ACEOF
IRCDFILE=" unreal31.c "
elif test "$withval" = "IRC_ULTIMATE2"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_ULTIMATE2 1
_ACEOF
IRCDFILE=" ultimate2.c "
elif test "$withval" = "IRC_ULTIMATE3"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_ULTIMATE3 1
_ACEOF
IRCDFILE=" ultimate3.c "
elif test "$withval" = "IRC_HYBRID"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_HYBRID 1
_ACEOF
IRCDFILE=" hybrid.c "
elif test "$withval" = "IRC_VIAGRA"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_VIAGRA 1
_ACEOF
IRCDFILE=" viagra.c "
elif test "$withval" = "IRC_PTLINK"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_PTLINK 1
_ACEOF
IRCDFILE=" ptlink.c "
elif test "$withval" = "IRC_RAGE2"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_RAGE2 1
_ACEOF
IRCDFILE=" rageircd.c "
elif test "$withval" = "IRC_UNREAL32"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_UNREAL32 1
_ACEOF
IRCDFILE=" unreal32.c "
elif test "$withval" = "IRC_SOLID"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_SOLID 1
_ACEOF
IRCDFILE=" solidircd.c "
fi
@@ -9248,6 +9262,7 @@ s,@RUNGROUP@,$RUNGROUP,;t t
s,@BINDEST@,$BINDEST,;t t
s,@DATDEST@,$DATDEST,;t t
s,@MODULE_PATH@,$MODULE_PATH,;t t
s,@IRCDFILE@,$IRCDFILE,;t t
s,@LIBOBJS@,$LIBOBJS,;t t
s,@LTLIBOBJS@,$LTLIBOBJS,;t t
CEOF
+28 -10
View File
@@ -193,28 +193,46 @@ AC_SUBST(DATDEST)
AC_SUBST(MODULE_PATH)
AC_ARG_WITH(ircd, [ --with-ircd=ircd Specify the first ircd type], [
if test "$withval" = "IRC_DREAMFORGE"; then
AC_DEFINE(IRC_DREAMFORGE,1,"Frist IRCD type")
elif test "$withval" = "IRC_BAHAMUT"; then
if test "$withval" = "IRC_BAHAMUT"; then
AC_DEFINE(IRC_BAHAMUT,1,"First IRCD type")
IRCDFILE=" bahamut.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_UNREAL31"; then
AC_DEFINE(IRC_UNREAL31,1,"First IRCD type")
AC_DEFINE(IRC_UNREAL31,1,"First IRCD type")
IRCDFILE=" unreal31.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_ULTIMATE2"; then
AC_DEFINE(IRC_ULTIMATE2,1,"First IRCD type")
AC_DEFINE(IRC_ULTIMATE2,1,"First IRCD type")
IRCDFILE=" ultimate2.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_ULTIMATE3"; then
AC_DEFINE(IRC_ULTIMATE3,1,"First IRCD type")
AC_DEFINE(IRC_ULTIMATE3,1,"First IRCD type")
IRCDFILE=" ultimate3.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_HYBRID"; then
AC_DEFINE(IRC_HYBRID,1,"First IRCD type")
IRCDFILE=" hybrid.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_VIAGRA"; then
AC_DEFINE(IRC_VIAGRA,1,"First IRCD type")
AC_DEFINE(IRC_VIAGRA,1,"First IRCD type")
IRCDFILE=" viagra.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_PTLINK"; then
AC_DEFINE(IRC_PTLINK,1,"First IRCD type")
IRCDFILE=" ptlink.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_RAGE2"; then
AC_DEFINE(IRC_RAGE2,1,"First IRCD type")
AC_DEFINE(IRC_RAGE2,1,"First IRCD type")
IRCDFILE=" rageircd.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_UNREAL32"; then
AC_DEFINE(IRC_UNREAL32,1,"First IRCD type")
AC_DEFINE(IRC_UNREAL32,1,"First IRCD type")
IRCDFILE=" unreal32.c "
AC_SUBST(IRCDFILE)
elif test "$withval" = "IRC_SOLID"; then
AC_DEFINE(IRC_SOLID,1,"First IRCD type")
AC_DEFINE(IRC_SOLID,1,"First IRCD type")
IRCDFILE=" solidircd.c "
AC_SUBST(IRCDFILE)
fi
])
+2 -2
View File
@@ -664,7 +664,7 @@ ProxyTestServer "1.2.3.4" 6667
# ProxyExpire <time> [RECOMMENDED]
#
# Sets the length of time before a proxy host cache entry expires, if
# not used.
# not used. If this is not set the default time is 2 days.
ProxyExpire 30d
@@ -679,7 +679,7 @@ ProxyExpire 30d
ProxyCacheExpire 1d
# ProxyAkillReason <reason>
# ProxyAkillReason <reason> [REQUIRED]
#
# Sets the reason that will be used to AKILL an user from the network
# if a proxy is detected.
+1 -1
View File
@@ -194,7 +194,7 @@ CREATE TABLE anope_ns_alias (
nick varchar(255) NOT NULL default '',
time_registered int(10) unsigned NOT NULL default '0',
last_seen int(10) unsigned NOT NULL default '0',
status smallint(6) NOT NULL default '0',
status int(11) unsigned NOT NULL default '0',
last_usermask text NOT NULL,
last_realname text NOT NULL,
last_quit text NOT NULL,
+1 -1
View File
@@ -339,7 +339,7 @@ struct memo_ {
};
typedef struct {
uint16 memocount, memomax;
int16 memocount, memomax;
Memo *memos;
} MemoInfo;
+2
View File
@@ -6371,3 +6371,5 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+2 -1
View File
@@ -6587,4 +6587,5 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE ist auf diesem Netzwerk nicht verfügbar.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin muss in der services.conf eingeschaltet werden
+2
View File
@@ -6111,4 +6111,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6362,3 +6362,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Lo siento, OLINE no esta disponible en esta red.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6404,3 +6404,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6248,3 +6248,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6132,3 +6132,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6407,3 +6407,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+2
View File
@@ -6272,4 +6272,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is niet beschikbaar op dit netwerk.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6685,3 +6685,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6005,3 +6005,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6150,3 +6150,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+3
View File
@@ -6181,3 +6181,6 @@ OPER_SVSO_UNSUPPORTED
OPER_UMODE_UNSUPPORTED
Sorry, UMODE is not available on this network.
OPER_SUPER_ADMIN_NOT_ENABLED
SuperAdmin setting not enabled in services.conf
+7 -9
View File
@@ -1,20 +1,18 @@
MYSQL_OBJ = $(MYSQL:.c=.o)
RDB_OBJ = $(RDB:.c=.o)
IRCD_OBJ = $(IRCDFILE:.c=.o)
OBJS = actions.o base64.o botserv.o channels.o chanserv.o commands.o compat.o converter.o \
config.o datafiles.o encrypt.o helpserv.o hostserv.o init.o language.o list.o log.o mail.o main.o \
memory.o memoserv.o messages.o misc.o modules.o news.o nickserv.o operserv.o \
process.o proxy.o send.o servers.o sessions.o slist.o sockutil.o \
timeout.o users.o dreamforge.o bahamut.o unreal31.o ultimate2.o ultimate3.o \
hybrid.o ptlink.o viagra.o rageircd.o unreal32.o solidircd.o \
$(VSNPRINTF_O) $(RDB_OBJ) $(MYSQL_OBJ)
memory.o memoserv.o messages.o misc.o modules.o news.o nickserv.o operserv.o \
process.o proxy.o send.o servers.o sessions.o slist.o sockutil.o \
timeout.o users.o \
$(VSNPRINTF_O) $(RDB_OBJ) $(MYSQL_OBJ) $(IRCD_OBJ)
SRCS = actions.c base64.c botserv.c channels.c chanserv.c commands.c compat.c converter.c \
config.c datafiles.c encrypt.c helpserv.c hostserv.c init.c language.c list.c log.c mail.c main.c \
memory.c memoserv.c messages.c misc.c modules.c news.c nickserv.c operserv.c \
process.c proxy.c send.c servers.c sessions.c slist.c sockutil.c \
dreamforge.c bahamut.c unreal31.c ultimate2.c ultimate3.c \
hybrid.c ptlink.c viagra.c rageircd.c unreal32.c solidircd.c \
timeout.c users.c \
$(VSNPRINTF_C) $(RDB) $(MYSQL)
$(VSNPRINTF_C) $(RDB) $(MYSQL) $(IRCDFILE)
INCLUDES = ../include/commands.h ../include/defs.h ../include/language.h \
../include/pseudo.h ../include/sysconf.h ../include/config.h \
@@ -31,7 +29,7 @@ MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'ANOPELIBS=${ANOPELIBS}' \
'INCLUDEDIR=${INCLUDEDIR}' 'RM=${RM}' 'CP=${CP}' \
'TOUCH=${TOUCH}' 'SHELL=${SHELL}' 'DATDEST=${DATDEST}' \
'RUNGROUP=${RUNGROUP}' 'MODULE_PATH=${MODULE_PATH}' 'MYSQL=${MYSQL}'\
'RDB=${RDB}'
'RDB=${RDB}' 'IRCDFILE=${IRCDFILE}'
.c.o:
$(CC) $(CFLAGS) -I../include/ -c $<
+1 -1
View File
@@ -526,7 +526,7 @@ Directive directives[] = {
{"Numeric", {{PARAM_POSINT, PARAM_RELOAD, &Numeric}}},
{"PreNickServDB", {{PARAM_STRING, PARAM_RELOAD, &PreNickDBName}}},
{"NSEmailReg", {{PARAM_SET, PARAM_RELOAD, &NSEmailReg}}},
{"NickRegDelay", {{PARAM_INT, PARAM_RELOAD, &NickRegDelay}}},
{"NickRegDelay", {{PARAM_POSINT, PARAM_RELOAD, &NickRegDelay}}},
{"NickServName", {{PARAM_STRING, 0, &s_NickServ},
{PARAM_STRING, 0, &desc_NickServ}}},
{"NickServAlias", {{PARAM_STRING, 0, &s_NickServAlias},
+2
View File
@@ -350,7 +350,9 @@ static int parse_options(int ac, char **av)
fprintf(stdout, "-forceload -forceload\n");
fprintf(stdout, "-readonly -readonly\n");
fprintf(stdout, "-noexpire -noexpire\n");
#ifdef IS44_CONVERTER
fprintf(stdout, "-is44 -is44\n");
#endif
fprintf(stdout, "-version -version\n");
fprintf(stdout, "-help -help\n");
fprintf(stdout, "-log -log logfilename\n");
+17 -9
View File
@@ -126,9 +126,7 @@ extern void expire_all(void)
waiting = -27;
expire_szlines();
}
#ifndef STREAMLINED
expire_exceptions();
#endif
#ifdef USE_THREADS
if (ProxyDetect)
proxy_expire();
@@ -241,8 +239,10 @@ static void services_restart(void)
**/
void do_restart_services(void)
{
expire_all();
save_databases();
if (!readonly) {
expire_all();
save_databases();
}
services_restart();
exit(1);
}
@@ -446,17 +446,25 @@ int main(int ac, char **av, char **envp)
else
progname = av[0];
/* Were we run under "listnicks" or "listchans"? Do appropriate stuff
* if so. */
if (strcmp(progname, "listnicks") == 0) {
#ifdef __CYGWIN__
if (strcmp(progname, "listnicks.exe") == 0)
#else
if (strcmp(progname, "listnicks") == 0)
#endif
{
do_listnicks(ac, av);
return 0;
} else if (strcmp(progname, "listchans") == 0) {
}
#ifdef __CYGWIN__
else if (strcmp(progname, "listchans.exe") == 0)
#else
else if (strcmp(progname, "listchans") == 0)
#endif
{
do_listchans(ac, av);
return 0;
}
/* Initialization stuff. */
if ((i = init(ac, av)) != 0)
return i;
+16
View File
@@ -900,6 +900,7 @@ void db_mysql_load_bs_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
if (mysql_num_rows(mysql_res) == 0) {
@@ -936,6 +937,7 @@ void db_mysql_load_hs_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
if (mysql_num_rows(mysql_res) == 0) {
@@ -970,6 +972,7 @@ void db_mysql_load_news(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
nnews = mysql_num_rows(mysql_res);
@@ -1009,6 +1012,7 @@ void db_mysql_load_exceptions(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
nexceptions = mysql_num_rows(mysql_res);
@@ -1044,6 +1048,7 @@ void db_mysql_load_os_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
if ((mysql_row = mysql_fetch_row(mysql_res))) {
@@ -1065,6 +1070,7 @@ void db_mysql_load_os_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
slist_setcapacity(&akills, akc);
@@ -1089,6 +1095,7 @@ void db_mysql_load_os_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql statement: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
while ((mysql_row = mysql_fetch_row(mysql_res))) {
@@ -1107,6 +1114,7 @@ void db_mysql_load_os_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql statement: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
while ((mysql_row = mysql_fetch_row(mysql_res))) {
@@ -1125,6 +1133,7 @@ void db_mysql_load_os_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql statement: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
while ((mysql_row = mysql_fetch_row(mysql_res))) {
@@ -1143,6 +1152,7 @@ void db_mysql_load_os_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
if (mysql_num_rows(mysql_res) == 0) {
@@ -1183,6 +1193,7 @@ void db_mysql_load_cs_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
if (mysql_num_rows(mysql_res) == 0) {
@@ -1242,6 +1253,7 @@ void db_mysql_load_cs_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
res = mysql_store_result(mysql);
n_levels = mysql_num_rows(res);
@@ -1260,6 +1272,7 @@ void db_mysql_load_cs_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
res = mysql_store_result(mysql);
j = 0;
@@ -1287,6 +1300,7 @@ void db_mysql_load_cs_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
res = mysql_store_result(mysql);
j = 0;
@@ -1415,6 +1429,7 @@ void db_mysql_load_ns_req_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
if (mysql_num_rows(mysql_res) == 0) {
@@ -1451,6 +1466,7 @@ void db_mysql_load_ns_dbase(void)
if (db_mysql_query(sqlcmd)) {
log_perror("Can't create sql query: %s", sqlcmd);
db_mysql_error(MYSQL_WARNING, "query");
return;
}
mysql_res = mysql_store_result(mysql);
if (mysql_num_rows(mysql_res) == 0) {
+8 -4
View File
@@ -428,13 +428,15 @@ static void do_news_add(User * u, int16 type, int *msgs,
snprintf(buf, sizeof(buf), "%sNEWS", typename);
syntax_error(s_OperServ, u, buf, msgs[MSG_ADD_SYNTAX]);
} else {
if (readonly) {
notice_lang(s_OperServ, u, READ_ONLY_MODE);
return;
}
int n = add_newsitem(u, text, type);
if (n < 0)
notice_lang(s_OperServ, u, msgs[MSG_ADD_FULL]);
else
notice_lang(s_OperServ, u, msgs[MSG_ADDED], n);
if (readonly)
notice_lang(s_OperServ, u, READ_ONLY_MODE);
}
}
@@ -488,6 +490,10 @@ static void do_news_del(User * u, int16 type, int *msgs,
snprintf(buf, sizeof(buf), "%sNEWS", typename);
syntax_error(s_OperServ, u, buf, msgs[MSG_DEL_SYNTAX]);
} else {
if (readonly) {
notice_lang(s_OperServ, u, READ_ONLY_MODE);
return;
}
if (stricmp(text, "ALL") != 0) {
int num = atoi(text);
if (num > 0 && del_newsitem(num, type)) {
@@ -505,8 +511,6 @@ static void do_news_del(User * u, int16 type, int *msgs,
else
notice_lang(s_OperServ, u, msgs[MSG_DEL_NONE]);
}
if (readonly)
notice_lang(s_OperServ, u, READ_ONLY_MODE);
}
}
-4
View File
@@ -4015,11 +4015,9 @@ static int do_ghost(User * u)
char buf[NICKMAX + 32];
snprintf(buf, sizeof(buf), "GHOST command used by %s",
u->nick);
#ifndef STREAMLINED
if (LimitSessions) {
del_session(u2->host);
}
#endif
kill_user(s_NickServ, nick, buf);
notice_lang(s_NickServ, u, NICK_GHOST_KILLED, nick);
} else {
@@ -4037,11 +4035,9 @@ static int do_ghost(User * u)
char buf[NICKMAX + 32];
snprintf(buf, sizeof(buf), "GHOST command used by %s",
u->nick);
#ifndef STREAMLINED
if (LimitSessions) {
del_session(u2->host);
}
#endif
kill_user(s_NickServ, nick, buf);
notice_lang(s_NickServ, u, NICK_GHOST_KILLED, nick);
} else {
+4 -6
View File
@@ -190,10 +190,8 @@ void moduleAddOperServCmds(void) {
c = createCommand("QUIT", do_os_quit, is_services_admin,OPER_HELP_QUIT, -1,-1,-1,-1); addCoreCommand(OPERSERV,c);
c = createCommand("SHUTDOWN", do_shutdown, is_services_admin,OPER_HELP_SHUTDOWN, -1,-1,-1,-1); addCoreCommand(OPERSERV,c);
c = createCommand("RESTART", do_restart, is_services_admin,OPER_HELP_RESTART, -1,-1,-1,-1); addCoreCommand(OPERSERV,c);
#ifndef STREAMLINED
c = createCommand("SESSION", do_session, is_services_admin,OPER_HELP_SESSION, -1,-1,-1, -1); addCoreCommand(OPERSERV,c);
c = createCommand("EXCEPTION", do_exception, is_services_admin,OPER_HELP_EXCEPTION, -1,-1,-1, -1); addCoreCommand(OPERSERV,c);
#endif
c = createCommand("CHANLIST", do_chanlist, is_services_admin,OPER_HELP_CHANLIST, -1,-1,-1,-1); addCoreCommand(OPERSERV,c);
c = createCommand("USERLIST", do_userlist, is_services_admin,OPER_HELP_USERLIST, -1,-1,-1,-1); addCoreCommand(OPERSERV,c);
c = createCommand("CACHE", do_cache, is_services_admin,OPER_HELP_CACHE, -1,-1,-1,-1); addCoreCommand(OPERSERV,c);
@@ -876,7 +874,6 @@ int nick_is_services_oper(NickCore * nc)
void check_clones(User * user)
{
#ifndef STREAMLINED
int i, clone_count;
long last_time;
@@ -925,7 +922,6 @@ void check_clones(User * user)
kill_user(s_OperServ, user->nick, "Clone kill");
}
}
#endif /* !STREAMLINED */
}
/*************************************************************************/
@@ -4617,14 +4613,16 @@ static int do_set(User * u)
* Rob
**/
} else if (stricmp(option, "SUPERADMIN") == 0) {
if (SuperAdmin && (stricmp(setting, "on") == 0)) {
if (!SuperAdmin) {
notice_lang(s_OperServ, u, OPER_SUPER_ADMIN_NOT_ENABLED);
} else if (stricmp(setting, "on") == 0) {
u->isSuperAdmin = 1;
notice_lang(s_OperServ, u, OPER_SUPER_ADMIN_ON);
alog("%s: %s is a SuperAdmin ", s_OperServ, u->nick);
anope_cmd_global(s_OperServ,
getstring2(NULL, OPER_SUPER_ADMIN_WALL_ON),
u->nick);
} else if (SuperAdmin && (stricmp(setting, "off") == 0)) {
} else if (stricmp(setting, "off") == 0) {
u->isSuperAdmin = 0;
notice_lang(s_OperServ, u, OPER_SUPER_ADMIN_OFF);
alog("%s: %s is no longer a SuperAdmin", s_OperServ, u->nick);
-2
View File
@@ -160,11 +160,9 @@ static void delete_server(Server * serv, const char *quitreason)
na->last_quit =
(quitreason ? sstrdup(quitreason) : NULL);
}
#ifndef STREAMLINED
if (LimitSessions) {
del_session(u->host);
}
#endif
delete_user(u);
}
u = unext;
-6
View File
@@ -489,11 +489,9 @@ User *do_nick(const char *source, char *nick, char *username, char *host,
if (check_szline(nick, ipbuf))
return NULL;
}
#ifndef STREAMLINED
/* Now check for session limits */
if (LimitSessions && !add_session(nick, host))
return NULL;
#endif
/* And finally, for proxy ;) */
#ifdef USE_THREADS
@@ -722,11 +720,9 @@ void do_quit(const char *source, int ac, char **av)
free(na->last_quit);
na->last_quit = *av[0] ? sstrdup(av[0]) : NULL;
}
#ifndef STREAMLINED
if (LimitSessions) {
del_session(user->host);
}
#endif
delete_user(user);
}
@@ -760,11 +756,9 @@ void do_kill(char *nick, char *msg)
na->last_quit = *msg ? sstrdup(msg) : NULL;
}
#ifndef STREAMLINED
if (LimitSessions) {
del_session(user->host);
}
#endif
delete_user(user);
}
+14 -1
View File
@@ -8,10 +8,23 @@
VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="6"
VERSION_BUILD="488"
VERSION_BUILD="489"
# $Log$
#
# BUILD : 1.7.6 (489)
# BUGS : 244, 246, 247, 248, 249, 250, 251, 252, 254, 255
# NOTES : 1. In some cases READONLY was not respected, and data was saved.
# 2. Corrected a few mistakes in example.conf.
# 3. Wrong column type in tables.sql for nick alias status fiag.
# 4. listchans and listnicks work under Cygwin.
# 5. NickRegDelay no longer accepts negative values.
# 6. -is44 option not show if converter not built.
# 7. Removed #ifndef STREAMLINE from the code as its no longer set during build time
# 8. MS MAX LIMIT was set incorrectly
# 9. Segfault if USERDB enabled and tables does not exist
# 10. Provides clear message of SUPERADMIN is not enabled
#
# BUILD : 1.7.6 (488)
# BUGS : N/A
# NOTES : del_session() warning messages when LimitSessions is disabled.