mirror of
https://github.com/anope/anope.git
synced 2026-07-09 22:43:13 +02:00
git-svn-id: svn://svn.anope.org/anope/trunk@981 31f1291d-b8d6-0310-a050-a5561fc1590b
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@706 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
parent
3a61b5a606
commit
88b67f00f7
@@ -13,6 +13,9 @@ Provided by Anope Dev. <dev@anope.org> - 2006
|
||||
03/01 F Fixed # prefix check on /cs forbid. [#461]
|
||||
03/01 F Fixed events on /join 0. [#417]
|
||||
03/01 F Added NULL checks to add_invite and add_exception. [#419]
|
||||
03/01 F Fixed suspend check on /cs invite. [#429]
|
||||
03/01 F Fixed memleaks in some protocol files. [#434]
|
||||
03/01 F Fixed bot check on /bs unassign. [#446]
|
||||
|
||||
Provided by nenolod. <nenolod@nenolod.net> - 2006
|
||||
02/03 A Support for Charybdis IRCd. [ #00]
|
||||
|
||||
@@ -79,9 +79,10 @@ int do_unassign(User * u)
|
||||
notice_lang(s_BotServ, u, CHAN_X_FORBIDDEN, chan);
|
||||
else if (!is_services_admin(u) && !check_access(u, ci, CA_ASSIGN))
|
||||
notice_lang(s_BotServ, u, ACCESS_DENIED);
|
||||
else if (!ci->bi)
|
||||
notice_help(s_BotServ, u, BOT_NOT_ASSIGNED);
|
||||
else {
|
||||
if (ci->bi)
|
||||
unassign(u, ci);
|
||||
unassign(u, ci);
|
||||
notice_lang(s_BotServ, u, BOT_UNASSIGN_UNASSIGNED, ci->name);
|
||||
}
|
||||
return MOD_CONT;
|
||||
|
||||
@@ -79,6 +79,8 @@ int do_invite(User * u)
|
||||
notice_lang(s_ChanServ, u, CHAN_X_NOT_REGISTERED, chan);
|
||||
} else if (ci->flags & CI_VERBOTEN) {
|
||||
notice_lang(s_ChanServ, u, CHAN_X_FORBIDDEN, chan);
|
||||
} else if (ci->flags & CI_SUSPENDED) {
|
||||
notice_lang(s_ChanServ, u, CHAN_X_FORBIDDEN, chan);
|
||||
} else if (!u || !check_access(u, ci, CA_INVITE)) {
|
||||
notice_lang(s_ChanServ, u, PERMISSION_DENIED);
|
||||
} else {
|
||||
|
||||
@@ -676,11 +676,16 @@ int anope_event_tburst(char *source, int ac, char **av)
|
||||
alog("debug: TOPIC %s for nonexistent channel %s",
|
||||
merge_args(ac - 1, av + 1), av[0]);
|
||||
}
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
if (check_topiclock(c, topic_time))
|
||||
if (check_topiclock(c, topic_time)) {
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
if (c->topic) {
|
||||
free(c->topic);
|
||||
@@ -693,6 +698,8 @@ int anope_event_tburst(char *source, int ac, char **av)
|
||||
c->topic_time = topic_time;
|
||||
|
||||
record_topic(av[0]);
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
@@ -1702,7 +1709,10 @@ int anope_event_bmask(char *source, int ac, char **av)
|
||||
if (!stricmp(av[2], "I")) {
|
||||
add_invite(c, b);
|
||||
}
|
||||
if (b)
|
||||
free(b);
|
||||
}
|
||||
free(bans);
|
||||
}
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
@@ -418,6 +418,7 @@ int anope_event_newmask(char *source, int ac, char **av)
|
||||
{
|
||||
User *u;
|
||||
char *newhost = NULL, *newuser = NULL;
|
||||
int tofree = 0;
|
||||
|
||||
if (ac != 1)
|
||||
return MOD_CONT;
|
||||
@@ -445,7 +446,9 @@ int anope_event_newmask(char *source, int ac, char **av)
|
||||
newuser = myStrGetOnlyToken(av[0], '@', 0);
|
||||
if (newuser) {
|
||||
newhost = myStrGetTokenRemainder(av[0], '@', 1);
|
||||
tofree = 1;
|
||||
change_user_username(u, newuser);
|
||||
free(newuser);
|
||||
} else {
|
||||
newhost = av[0];
|
||||
}
|
||||
@@ -455,9 +458,11 @@ int anope_event_newmask(char *source, int ac, char **av)
|
||||
|
||||
u->mode |= UMODE_VH;
|
||||
|
||||
if (newhost) {
|
||||
if (newhost)
|
||||
change_user_host(u, newhost);
|
||||
}
|
||||
|
||||
if (tofree)
|
||||
free(newhost);
|
||||
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
+11
-1
@@ -667,11 +667,16 @@ int anope_event_tburst(char *source, int ac, char **av)
|
||||
alog("debug: TOPIC %s for nonexistent channel %s",
|
||||
merge_args(ac - 1, av + 1), av[0]);
|
||||
}
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
if (check_topiclock(c, topic_time))
|
||||
if (check_topiclock(c, topic_time)) {
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
if (c->topic) {
|
||||
free(c->topic);
|
||||
@@ -684,6 +689,8 @@ int anope_event_tburst(char *source, int ac, char **av)
|
||||
c->topic_time = topic_time;
|
||||
|
||||
record_topic(av[0]);
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
@@ -1679,7 +1686,10 @@ int anope_event_bmask(char *source, int ac, char **av)
|
||||
if (!stricmp(av[2], "I")) {
|
||||
add_invite(c, b);
|
||||
}
|
||||
if (b)
|
||||
free(b);
|
||||
}
|
||||
free(bans);
|
||||
}
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
@@ -706,11 +706,16 @@ int anope_event_tburst(char *source, int ac, char **av)
|
||||
alog("debug: TOPIC %s for nonexistent channel %s",
|
||||
merge_args(ac - 1, av + 1), av[0]);
|
||||
}
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
if (check_topiclock(c, topic_time))
|
||||
if (check_topiclock(c, topic_time)) {
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
if (c->topic) {
|
||||
free(c->topic);
|
||||
@@ -723,6 +728,8 @@ int anope_event_tburst(char *source, int ac, char **av)
|
||||
c->topic_time = topic_time;
|
||||
|
||||
record_topic(av[0]);
|
||||
if (setter)
|
||||
free(setter);
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
@@ -1627,7 +1634,10 @@ int anope_event_bmask(char *source, int ac, char **av)
|
||||
if (!stricmp(av[2], "I")) {
|
||||
add_invite(c, b);
|
||||
}
|
||||
if (b)
|
||||
free(b);
|
||||
}
|
||||
free(bans);
|
||||
}
|
||||
return MOD_CONT;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user