From: pk910 Date: Sat, 10 Sep 2011 16:05:45 +0000 (+0200) Subject: execute mysql_check only if a query fails. X-Git-Tag: v5.3~441 X-Git-Url: http://git.pk910.de/?a=commitdiff_plain;h=f621224dd6b5e91acab1183e81e5d6976d4e1f8c;p=NeonServV5.git execute mysql_check only if a query fails. --- diff --git a/DBHelper.c b/DBHelper.c index 5e9005d..181fff6 100644 --- a/DBHelper.c +++ b/DBHelper.c @@ -8,7 +8,6 @@ #include "tools.h" void _loadUserSettings(struct UserNode *user) { - check_mysql(); MYSQL_RES *res; MYSQL_ROW row; printf_mysql_query("SELECT `user_lang`, `user_reply_privmsg`, `user_god` FROM `users` WHERE `user_user` = '%s'", escape_string(user->auth)); @@ -36,7 +35,6 @@ int getChannelAccess(struct UserNode *user, struct ChanNode *chan, int override) if(!(chan->flags & CHANFLAG_CHAN_REGISTERED)) return 0; MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); int caccess = 0; printf_mysql_query("SELECT `user_id`, `user_access`, `user_god` FROM `users` WHERE `user_user` = '%s'", escape_string(user->auth)); res = mysql_use(); @@ -95,7 +93,6 @@ int checkChannelAccess(struct UserNode *user, struct ChanNode *chan, char *chann } void _loadChannelSettings(struct ChanNode *chan) { - check_mysql(); MYSQL_RES *res; MYSQL_ROW row; printf_mysql_query("SELECT `channel_id` FROM `channels` WHERE `channel_name` = '%s'", escape_string(chan->name)); diff --git a/bot_NeonServ.c b/bot_NeonServ.c index 54a82e6..6092e17 100644 --- a/bot_NeonServ.c +++ b/bot_NeonServ.c @@ -241,7 +241,6 @@ static void neonserv_bot_ready(struct ClientSocket *client) { MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); printf_mysql_query("SELECT `automodes` FROM `bots` WHERE `id` = '%d'", client->clientid); res = mysql_use(); if ((row = mysql_fetch_row(res)) != NULL) { @@ -299,8 +298,6 @@ static void start_bots() { } void init_NeonServ() { - check_mysql(); - register_command(BOTID, "modes", neonserv_cmd_modes, 1, CMDFLAG_REQUIRE_CHAN | CMDFLAG_REQUIRE_AUTH | CMDFLAG_CHECK_AUTH, NULL, 0); register_command(BOTID, "adduser", neonserv_cmd_adduser, 2, CMDFLAG_REQUIRE_CHAN | CMDFLAG_REGISTERED_CHAN | CMDFLAG_REQUIRE_AUTH | CMDFLAG_CHECK_AUTH, "#channel_canadd", 0); diff --git a/cmd_neonserv_addban.c b/cmd_neonserv_addban.c index aebbb28..ca0d692 100644 --- a/cmd_neonserv_addban.c +++ b/cmd_neonserv_addban.c @@ -45,7 +45,6 @@ static void neonserv_cmd_addban_async1(struct ClientSocket *client, struct Clien char usermask[NICKLEN+USERLEN+HOSTLEN+3]; struct UserNode *cuser; struct ChanUser *chanuser; - check_mysql(); mask = make_banmask(mask, hostmask_buffer); for(chanuser = getChannelUsers(chan, NULL); chanuser; chanuser = getChannelUsers(chan, chanuser)) { cuser = chanuser->user; diff --git a/cmd_neonserv_adduser.c b/cmd_neonserv_adduser.c index 80a9043..ceab6cd 100644 --- a/cmd_neonserv_adduser.c +++ b/cmd_neonserv_adduser.c @@ -19,7 +19,6 @@ static CMD_BIND(neonserv_cmd_adduser) { int caccess; MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); caccess = atoi(argv[1]); if(caccess <= 0 || caccess > 500) { reply(getTextBot(), user, "NS_INVALID_ACCESS", caccess); diff --git a/cmd_neonserv_ban.c b/cmd_neonserv_ban.c index e51934d..50db4c4 100644 --- a/cmd_neonserv_ban.c +++ b/cmd_neonserv_ban.c @@ -41,7 +41,6 @@ static void neonserv_cmd_ban_async1(struct ClientSocket *client, struct ClientSo struct ModeBuffer *modeBuf; modeBuf = initModeBuffer(client, chan); nextmask = masks; - check_mysql(); while((mask = nextmask)) { nextmask = strstr(mask, ","); if(nextmask) { diff --git a/cmd_neonserv_clvl.c b/cmd_neonserv_clvl.c index 1aa00aa..51bab6a 100644 --- a/cmd_neonserv_clvl.c +++ b/cmd_neonserv_clvl.c @@ -16,7 +16,6 @@ struct neonserv_cmd_clvl_cache { static CMD_BIND(neonserv_cmd_clvl) { int caccess; - check_mysql(); caccess = atoi(argv[1]); if(caccess <= 0 || caccess > 500) { reply(getTextBot(), user, "NS_INVALID_ACCESS", caccess); diff --git a/cmd_neonserv_delban.c b/cmd_neonserv_delban.c index 0ac7dcf..b211a11 100644 --- a/cmd_neonserv_delban.c +++ b/cmd_neonserv_delban.c @@ -5,7 +5,6 @@ static CMD_BIND(neonserv_cmd_delban) { char hostmask_buffer[NICKLEN+USERLEN+HOSTLEN+3]; - check_mysql(); char *mask = make_banmask(argv[0], hostmask_buffer); int matching_bans = 0; MYSQL_RES *res; diff --git a/cmd_neonserv_delme.c b/cmd_neonserv_delme.c index cca126e..13d288f 100644 --- a/cmd_neonserv_delme.c +++ b/cmd_neonserv_delme.c @@ -4,7 +4,6 @@ */ static CMD_BIND(neonserv_cmd_delme) { - check_mysql(); MYSQL_RES *res; MYSQL_ROW row; int userid; diff --git a/cmd_neonserv_deluser.c b/cmd_neonserv_deluser.c index 806a253..e7928f9 100644 --- a/cmd_neonserv_deluser.c +++ b/cmd_neonserv_deluser.c @@ -13,7 +13,6 @@ struct neonserv_cmd_deluser_cache { }; static CMD_BIND(neonserv_cmd_deluser) { - check_mysql(); if(argv[0][0] == '*') { //we've got an auth argv[0]++; diff --git a/cmd_neonserv_deopall.c b/cmd_neonserv_deopall.c index 8fe1f82..92d5b2f 100644 --- a/cmd_neonserv_deopall.c +++ b/cmd_neonserv_deopall.c @@ -45,7 +45,6 @@ static void neonserv_cmd_deopall_async1(struct ClientSocket *client, struct Clie char *nickmask = NULL; struct ChanUser *chanuser; struct ModeBuffer *modeBuf; - check_mysql(); if(!checkChannelAccess(user, chan, "channel_canop", 1, 0)) { reply(getTextBot(), user, "NS_ACCESS_DENIED"); return; diff --git a/cmd_neonserv_downall.c b/cmd_neonserv_downall.c index 28c02ba..6a23db8 100644 --- a/cmd_neonserv_downall.c +++ b/cmd_neonserv_downall.c @@ -4,7 +4,6 @@ */ static CMD_BIND(neonserv_cmd_downall) { - check_mysql(); struct ChanUser *chanuser; for(chanuser = getUserChannels(user, NULL); chanuser; chanuser = getUserChannels(user, chanuser)) { chan = chanuser->chan; diff --git a/cmd_neonserv_giveowner.c b/cmd_neonserv_giveowner.c index 0187d1d..bea8de0 100644 --- a/cmd_neonserv_giveowner.c +++ b/cmd_neonserv_giveowner.c @@ -18,7 +18,6 @@ struct neonserv_cmd_giveowner_cache { }; static CMD_BIND(neonserv_cmd_giveowner) { - check_mysql(); if(getChannelAccess(user, chan, 0) != 500) { reply(getTextBot(), user, "NS_ACCESS_DENIED"); return; diff --git a/cmd_neonserv_kick.c b/cmd_neonserv_kick.c index 9223f69..66aa32a 100644 --- a/cmd_neonserv_kick.c +++ b/cmd_neonserv_kick.c @@ -45,7 +45,6 @@ static void neonserv_cmd_kick_async1(struct ClientSocket *client, struct ClientS struct UserNode *cuser; struct ChanUser *chanuser; nextnick = nicks; - check_mysql(); while((nick = nextnick)) { nextnick = strstr(nick, ","); if(nextnick) { diff --git a/cmd_neonserv_kickban.c b/cmd_neonserv_kickban.c index c338652..ae59941 100644 --- a/cmd_neonserv_kickban.c +++ b/cmd_neonserv_kickban.c @@ -46,7 +46,6 @@ static void neonserv_cmd_kickban_async1(struct ClientSocket *client, struct Clie struct ChanUser *chanuser; char usermask[NICKLEN+USERLEN+HOSTLEN+3]; nextnick = nicks; - check_mysql(); while((nick = nextnick)) { nextnick = strstr(nick, ","); if(nextnick) { diff --git a/cmd_neonserv_mdeluser.c b/cmd_neonserv_mdeluser.c index 7dceafb..6608066 100644 --- a/cmd_neonserv_mdeluser.c +++ b/cmd_neonserv_mdeluser.c @@ -5,7 +5,6 @@ */ static CMD_BIND(neonserv_cmd_mdeluser) { - check_mysql(); if(!checkChannelAccess(user, chan, "channel_candel", 1, 0)) { reply(getTextBot(), user, "NS_ACCESS_DENIED"); return; diff --git a/cmd_neonserv_netinfo.c b/cmd_neonserv_netinfo.c index 5d814d8..b08fc8f 100644 --- a/cmd_neonserv_netinfo.c +++ b/cmd_neonserv_netinfo.c @@ -71,7 +71,6 @@ static CMD_BIND(neonserv_cmd_netinfo) { MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); printf_mysql_query("SHOW TABLE STATUS"); res = mysql_use(); int mysql_entrys[4]; diff --git a/cmd_neonserv_set.c b/cmd_neonserv_set.c index 7bba0d0..c87acdc 100644 --- a/cmd_neonserv_set.c +++ b/cmd_neonserv_set.c @@ -83,7 +83,6 @@ static CMD_BIND(neonserv_cmd_set) { if(argc > 1 && !strcmp(argv[1], defaultskey)) { char query[MAX_QUERY_LEN]; int querypos = 0; - check_mysql(); i = 0; while(channel_settings[i].setting) { if(channel_settings[i].chanfield) @@ -122,7 +121,6 @@ static CMD_BIND(neonserv_cmd_set) { reply(getTextBot(), user, "NS_SET_UNKNOWN_SETTING", argv[0]); } } else { - check_mysql(); char query[MAX_QUERY_LEN], *value, *org_value, *tmp, nameBuf[64]; int querypos = 0; MYSQL_RES *res, *defaults_res; @@ -197,7 +195,6 @@ static void neonserv_cmd_set_setting(struct ClientSocket *client, struct UserNod //get current value MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); printf_mysql_query("SELECT `%s` FROM `channels` WHERE `channel_id` = '%d'", channel_settings[setting].chanfield, chan->channel_id); res = mysql_use(); row = mysql_fetch_row(res); @@ -290,7 +287,6 @@ static char* neonserv_cmd_set_trigger(struct ClientSocket *client, struct UserNo //get current trigger MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); printf_mysql_query("SELECT `trigger` FROM `bot_channels` WHERE `chanid` = '%d' AND `botid` = '%d'", chan->channel_id, client->clientid); res = mysql_use(); row = mysql_fetch_row(res); @@ -318,7 +314,6 @@ static char* neonserv_cmd_set_modes(struct ClientSocket *client, struct UserNode //get current value MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); printf_mysql_query("SELECT `channel_modes` FROM `channels` WHERE `channel_id` = '%d'", chan->channel_id); res = mysql_use(); row = mysql_fetch_row(res); @@ -344,7 +339,6 @@ static char* neonserv_cmd_set_dynlimit(struct ClientSocket *client, struct UserN //get current value MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); printf_mysql_query("SELECT `channel_dynlimit` FROM `channels` WHERE `channel_id` = '%d'", chan->channel_id); res = mysql_use(); row = mysql_fetch_row(res); @@ -375,7 +369,6 @@ static char* neonserv_cmd_set_nodelete(struct ClientSocket *client, struct UserN //get current value MYSQL_RES *res; MYSQL_ROW row; - check_mysql(); printf_mysql_query("SELECT `channel_nodelete` FROM `channels` WHERE `channel_id` = '%d'", chan->channel_id); res = mysql_use(); row = mysql_fetch_row(res); diff --git a/cmd_neonserv_suspend.c b/cmd_neonserv_suspend.c index bb6db50..867b74b 100644 --- a/cmd_neonserv_suspend.c +++ b/cmd_neonserv_suspend.c @@ -13,7 +13,6 @@ struct neonserv_cmd_suspend_cache { }; static CMD_BIND(neonserv_cmd_suspend) { - check_mysql(); if(argv[0][0] == '*') { //we've got an auth argv[0]++; diff --git a/cmd_neonserv_topic.c b/cmd_neonserv_topic.c index b9ea65d..c530de4 100644 --- a/cmd_neonserv_topic.c +++ b/cmd_neonserv_topic.c @@ -11,7 +11,6 @@ #define ADVANCEDTOPIC_MAXID 9 static CMD_BIND(neonserv_cmd_topic) { - check_mysql(); MYSQL_RES *res; MYSQL_ROW row, default_row = NULL; int advanced_topic, i; diff --git a/cmd_neonserv_trim.c b/cmd_neonserv_trim.c index 569f642..9679195 100644 --- a/cmd_neonserv_trim.c +++ b/cmd_neonserv_trim.c @@ -15,7 +15,6 @@ struct neonserv_cmd_trim_cache { }; static CMD_BIND(neonserv_cmd_trim) { - check_mysql(); if(stricmp(argv[0], "bans") && !checkChannelAccess(user, chan, "channel_candel", 1, 0)) { reply(getTextBot(), user, "NS_ACCESS_DENIED"); return; diff --git a/cmd_neonserv_unsuspend.c b/cmd_neonserv_unsuspend.c index dabe1aa..58fdee5 100644 --- a/cmd_neonserv_unsuspend.c +++ b/cmd_neonserv_unsuspend.c @@ -13,7 +13,6 @@ struct neonserv_cmd_unsuspend_cache { }; static CMD_BIND(neonserv_cmd_unsuspend) { - check_mysql(); if(argv[0][0] == '*') { //we've got an auth argv[0]++; diff --git a/cmd_neonserv_upall.c b/cmd_neonserv_upall.c index f23d96d..6324c11 100644 --- a/cmd_neonserv_upall.c +++ b/cmd_neonserv_upall.c @@ -4,7 +4,6 @@ */ static CMD_BIND(neonserv_cmd_upall) { - check_mysql(); MYSQL_RES *res, *default_res; MYSQL_ROW row, default_row; struct ChanUser *chanuser; diff --git a/cmd_neonserv_wipeinfo.c b/cmd_neonserv_wipeinfo.c index 72275ab..71a7160 100644 --- a/cmd_neonserv_wipeinfo.c +++ b/cmd_neonserv_wipeinfo.c @@ -13,7 +13,6 @@ struct neonserv_cmd_wipeinfo_cache { }; static CMD_BIND(neonserv_cmd_wipeinfo) { - check_mysql(); if(argv[0][0] == '*') { //we've got an auth argv[0]++; diff --git a/modcmd.c b/modcmd.c index 1da0950..c480529 100644 --- a/modcmd.c +++ b/modcmd.c @@ -257,7 +257,6 @@ static void handle_command_async(struct ClientSocket *client, struct UserNode *u } } if((cbind->func->flags & CMDFLAG_REGISTERED_CHAN)) { - check_mysql(); MYSQL_ROW defaults = NULL; char access_list[256]; int access_pos = 0; diff --git a/mysqlConn.c b/mysqlConn.c index 81fa038..53b50e9 100644 --- a/mysqlConn.c +++ b/mysqlConn.c @@ -18,6 +18,7 @@ static struct escaped_string *escaped_strings; void check_mysql() { if(mysql_ping(mysql_conn)) { //mysql error + show_mysql_error(); } } @@ -80,7 +81,10 @@ void printf_mysql_query(const char *text, ...) { queryBuf[pos] = '\0'; printf("MySQL: %s\n", queryBuf); if(mysql_query(mysql_conn, queryBuf)) { - show_mysql_error(); + check_mysql(); + if(mysql_query(mysql_conn, queryBuf)) { + show_mysql_error(); + } } }