From a5a12f4e582b31d3c65de6eb6dd7a3d67f80361c Mon Sep 17 00:00:00 2001 From: dms Date: Fri, 9 Feb 2001 13:37:38 +0000 Subject: [PATCH] forgot to set nuh for on_join; fixed up ban check on join. git-svn-id: https://svn.code.sf.net/p/infobot/code/trunk@370 c11ca15a-4712-0410-83d8-924469b57eb5 --- blootbot/src/IRC/IrcHooks.pl | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/blootbot/src/IRC/IrcHooks.pl b/blootbot/src/IRC/IrcHooks.pl index c76e1b5..70b03a2 100644 --- a/blootbot/src/IRC/IrcHooks.pl +++ b/blootbot/src/IRC/IrcHooks.pl @@ -418,23 +418,24 @@ sub on_join { &status(">>> join/$b_blue$chan$ob $b_cyan$who$ob $b_yellow($ob$user\@$host$b_yellow)$ob$netsplitstr"); $channels{$chan}{''}{$who}++; - $nuh{lc $who} = $who."!".$user."\@".$host unless (exists $nuh{lc $who}); + $nuh = $who."!".$user."\@".$host; + $nuh{lc $who} = $nuh unless (exists $nuh{lc $who}); - ### on-join ban. (TODO: kick) - if (exists $bans{$chan}) { - ### TODO: need to do $chan and _default - foreach (keys %{ $bans{$chan} }) { - s/\*/\\S*/g; - next unless /^\Q$nuh\E$/i; - - foreach (keys %{ $channels{$chan}{'b'} }) { - &DEBUG(" bans_on_chan($chan) => $_"); - } + ### on-join bans. + my @bans = keys %{ $bans{$chan} }; + push(@bans, keys %{ $bans{"*"} }); + foreach (@bans) { + s/\*/\\S*/g; + next unless /^\Q$nuh\E$/i; - ### TODO: check $channels{$chan}{'b'} if ban already exists. - &ban( "*!*@".&makeHostMask($host), $chan); - last; + ### TODO: check $channels{$chan}{'b'} if ban already exists. + foreach (keys %{ $channels{$chan}{'b'} }) { + &DEBUG(" bans_on_chan($chan) => $_"); } + + ### TODO: kick + &ban( "*!*@".&makeHostMask($host), $chan); + last; } ### ROOTWARN: -- 2.39.5