diff options
-rw-r--r-- | Changes | 1 | ||||
-rw-r--r-- | chanserv.c | 33 | ||||
-rw-r--r-- | version.log | 6 |
3 files changed, 39 insertions, 1 deletions
@@ -1,6 +1,7 @@ Anope Version S V N ------------------- Provided by Anope Dev. <dev@anope.org> - 2004 +05/21 A Auto enforce upon AKICK addition. [ #63] 05/21 A New file docs/OLDCHANGES contains all change history. [ #65] 05/21 F Removed threads.c file. [ #64] diff --git a/chanserv.c b/chanserv.c index 970355fb3..c70bf2362 100644 --- a/chanserv.c +++ b/chanserv.c @@ -4463,8 +4463,41 @@ static int do_akick(User * u) } else { akick->reason = NULL; } + + /* Auto ENFORCE #63 */ + Channel *c = findchan(ci->name); + struct c_userlist *cu = NULL; + struct c_userlist *next; + char *argv[3]; + int count = 0; + + if (c) { + cu = c->users; + while (cu) { + next = cu->next; + if (check_kick(cu->user, c->name)) { + argv[0] = sstrdup(c->name); + argv[1] = sstrdup(cu->user->nick); + argv[2] = sstrdup(akick->reason); + + do_kick(s_ChanServ, 3, argv); + + free(argv[2]); + free(argv[1]); + free(argv[0]); + count++; + + } + cu = next; + } + } + notice_lang(s_ChanServ, u, CHAN_AKICK_ADDED, mask, chan); + if (count) + notice_lang(s_ChanServ, u, CHAN_AKICK_ENFORCE_DONE, chan, + count); + } else if (stricmp(cmd, "STICK") == 0) { NickAlias *na; NickCore *nc; diff --git a/version.log b/version.log index bc10082ca..54b7e1354 100644 --- a/version.log +++ b/version.log @@ -8,10 +8,14 @@ VERSION_MAJOR="1" VERSION_MINOR="7" VERSION_PATCH="3" -VERSION_BUILD="116" +VERSION_BUILD="117" # $Log$ # +# BUILD : 1.7.3 (117) +# BUGS : 63 +# NOTES : Auto enforce upon AKICK addition. +# # BUILD : 1.7.3 (116) # BUGS : 65 # NOTES : New file docs/OLDCHANGES |