mirror of
https://github.com/anope/anope.git
synced 2026-07-10 08:03:13 +02:00
BUILD : 1.7.6 (524) BUGS : NOTES : bot_raw_ban was not adjusted for TSMODE capable IRCDs yet
git-svn-id: svn://svn.anope.org/anope/trunk@524 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@378 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
parent
db826b63e1
commit
8dfbdaeae6
+26
-7
@@ -1061,8 +1061,10 @@ static void bot_kick(ChannelInfo * ci, User * u, int message, ...)
|
||||
static void bot_raw_ban(User * requester, ChannelInfo * ci, char *nick,
|
||||
char *reason)
|
||||
{
|
||||
char *av[3];
|
||||
int ac;
|
||||
char *av[4];
|
||||
char mask[BUFSIZE];
|
||||
char buf[BUFSIZE];
|
||||
User *u = finduser(nick);
|
||||
|
||||
if (!u)
|
||||
@@ -1088,13 +1090,30 @@ static void bot_raw_ban(User * requester, ChannelInfo * ci, char *nick,
|
||||
}
|
||||
}
|
||||
|
||||
av[0] = ci->name;
|
||||
av[1] = sstrdup("+b");
|
||||
get_idealban(ci, u, mask, sizeof(mask));
|
||||
av[2] = mask;
|
||||
anope_cmd_mode(ci->bi->nick, av[0], "+b %s", av[2]);
|
||||
do_cmode(ci->bi->nick, 3, av);
|
||||
free(av[1]);
|
||||
|
||||
if (ircdcap->tsmode) {
|
||||
snprintf(buf, BUFSIZE - 1, "%ld", (long int) time(NULL));
|
||||
av[0] = ci->name;
|
||||
av[1] = buf;
|
||||
av[2] = sstrdup("+b");
|
||||
av[3] = mask;
|
||||
ac = 4;
|
||||
} else {
|
||||
av[0] = ci->name;
|
||||
av[1] = sstrdup("+b");
|
||||
av[2] = mask;
|
||||
ac = 3;
|
||||
}
|
||||
|
||||
anope_cmd_mode(ci->bi->nick, ci->name, "+b %s", mask);
|
||||
do_cmode(ci->bi->nick, ac, av);
|
||||
|
||||
/* We need to free our sstrdup'd "+b" -GD */
|
||||
if (ircdcap->tsmode)
|
||||
free(av[2]);
|
||||
else
|
||||
free(av[1]);
|
||||
|
||||
av[0] = ci->name;
|
||||
av[1] = nick;
|
||||
|
||||
Reference in New Issue
Block a user