3
0
mirror of https://github.com/pragma-/pbot.git synced 2024-11-30 07:59:42 +01:00

Added Time::Duration to anti-flood join history

This commit is contained in:
Pragmatic Software 2010-06-27 05:36:58 +00:00
parent 521ae5c704
commit 999d8ae4a8
2 changed files with 4 additions and 3 deletions

View File

@ -16,6 +16,7 @@ use vars qw($VERSION);
$VERSION = $PBot::PBot::VERSION; $VERSION = $PBot::PBot::VERSION;
use Time::HiRes qw(gettimeofday); use Time::HiRes qw(gettimeofday);
use Time::Duration;
use Carp (); use Carp ();
sub new { sub new {
@ -191,7 +192,7 @@ sub check_flood {
my $i = $length - 1; my $i = $length - 1;
$self->{pbot}->logger->log("Checking flood history, i = $i\n"); $self->{pbot}->logger->log("Checking flood history, i = $i\n");
for(; $i >= 0; $i--) { for(; $i >= 0; $i--) {
$self->{pbot}->logger->log($i . " " . $self->message_history->{$account}{$channel}{messages}->[$i]{mode} ." " . $self->message_history->{$account}{$channel}{messages}->[$i]{msg} . " " . $self->message_history->{$account}{$channel}{messages}->[$i]{timestamp} . "\n"); $self->{pbot}->logger->log($i . " " . $self->message_history->{$account}{$channel}{messages}->[$i]{mode} ." " . $self->message_history->{$account}{$channel}{messages}->[$i]{msg} . " " . $self->message_history->{$account}{$channel}{messages}->[$i]{timestamp} . " [" . ago_exact(time - $self->message_history->{$account}{$channel}{messages}->[$i]{timestamp}) . "]\n");
next if $self->message_history->{$account}{$channel}{messages}->[$i]{mode} != $self->{FLOOD_JOIN}; next if $self->message_history->{$account}{$channel}{messages}->[$i]{mode} != $self->{FLOOD_JOIN};
last if ++$count >= 4; last if ++$count >= 4;
} }
@ -201,7 +202,7 @@ sub check_flood {
my %last = %{ @{ ${ $self->message_history }{$account}{$channel}{messages} }[$length - 1] }; my %last = %{ @{ ${ $self->message_history }{$account}{$channel}{messages} }[$length - 1] };
$self->{pbot}->logger->log("Comparing " . int($last{timestamp}) . " against " . int($msg{timestamp}) . ": " . (int($last{timestamp} - $msg{timestamp})) . " seconds\n") if $mode == $self->{FLOOD_JOIN}; $self->{pbot}->logger->log("Comparing " . int($last{timestamp}) . " against " . int($msg{timestamp}) . ": " . (int($last{timestamp} - $msg{timestamp})) . " seconds [" . ago_exact($last{timestamp} - $msg{timestamp}) . "]\n") if $mode == $self->{FLOOD_JOIN};
if($last{timestamp} - $msg{timestamp} <= $max_time && not $self->{pbot}->admins->loggedin($channel, "$nick!$user\@$host")) { if($last{timestamp} - $msg{timestamp} <= $max_time && not $self->{pbot}->admins->loggedin($channel, "$nick!$user\@$host")) {
if($mode == $self->{FLOOD_JOIN}) { if($mode == $self->{FLOOD_JOIN}) {

View File

@ -13,7 +13,7 @@ use warnings;
# These are set automatically by the build/commit script # These are set automatically by the build/commit script
use constant { use constant {
BUILD_NAME => "PBot", BUILD_NAME => "PBot",
BUILD_REVISION => 206, BUILD_REVISION => 207,
BUILD_DATE => "2010-06-26", BUILD_DATE => "2010-06-26",
}; };