[IRCServices] Kick war with ChanServ, for the 135175631861th time..
Robin Burchell
robin at en2no.com
Sat Jan 5 16:05:56 PST 2008
No +I masks, three +e masks are set, neither of which match me..
#helpers *!*@herring.chatspike.net set by Om (Sat Nov 03 23:13:31)
#helpers *!*@helper.chatspike.net set by Om (Sat Nov 03 23:13:27)
#helpers *!*@tortoisegod.chatspike.net set by Om (Sat Nov 03 23:13:21)
#helpers End of Channel Exception List
-
#helpers End of Channel Invite Exception List
w00t is w00t at globop.chatspike.net * Master of all trades; jack of none
<- being me.
Explicit invite - (as in /invite?) - aren't used on that channel. It's
also perhaps worthy of note that /invite only overrides ban on some
software.
I imagine the problem was caused as some IRCds will propegate the ban
anyway (no duplicates checking) from a server to server link, so I
guess that could be construed as a problem of sorts, though not a
major one.
Given the infrequency of this problem, I don't mind waiting until the
list archives are back up for you to check, by all means. :)
On Jan 5, 2008 11:52 PM, Andrew Church <achurch at achurch.org> wrote:
> >I understand it must be frustrating to have an issue like this that's
> >so hard to track down, but it is equally frustrating to get bit in the
> >ass by it. Isn't it wise to assume that if they are joining an
> >existing channel that a ban matching them doesn't exist anyway
> >(otherwise how are they joining?)
>
> +e, +I, explicit INVITE, possibly other methods. Originally, I didn't
> bother checking for the ban, but apparently it caused a problem, because
> I added the check in 4.5pre0:
>
> 2001/01/11 Fixed duplicate adding of bans when auto-kicking a user
> from a channel. Reported by James <daemus at evilcode.com>
> --- chanserv.c 11 Jan 2001 00:03:56 -0000 1.10
> +++ chanserv.c 11 Jan 2001 04:29:13 -0000 1.11
> @@ -670,10 +670,13 @@
> #else
> }
> #endif
> - av[1] = "+b";
> - av[2] = mask;
> - send_cmd(s_ChanServ, "MODE %s +b %s %lu", chan, mask, time(NULL));
> - do_cmode(s_ChanServ, 3, av);
> + /* Apparently invites can get around bans, so check for ban first */
> + if (!chan_has_ban(mask)) {
> + av[1] = "+b";
> + av[2] = mask;
> + send_cmd(s_ChanServ, "MODE %s +b %s %lu", chan, mask, time(NULL));
> + do_cmode(s_ChanServ, 3, av);
> + }
> free(mask);
> send_cmd(s_ChanServ, "KICK %s %s :%s", chan, user->nick, reason);
> if (stay) {
>
> The list archives are down at the moment, so I can't check exactly what
> the problem was, whether it was a serious issue or just cosmetic; I'm
> hesitant to remove the check without knowing more. (Of course, you're
> welcome to try removing it yourself and seeing what happens.)
>
>
> --Andrew Church
> achurch at achurch.org
> http://achurch.org/
>
> ------------------------------------------------------------------
> To unsubscribe or change your subscription options, visit:
> http://lists.ircservices.za.net/mailman/listinfo/ircservices
>
--
Robin Burchell
mob: +447702671419
msn: msn at viroteck.net
web: http://www.en2no.com