summaryrefslogtreecommitdiffstats
path: root/modules/classes.pl
diff options
context:
space:
mode:
authorLibravatarWilliam Heimbigner <william.heimbigner@gmail.com>2012-05-30 22:12:30 +0000
committerLibravatarWilliam Heimbigner <william.heimbigner@gmail.com>2012-05-30 22:12:30 +0000
commitd7aa95f5ee6f1d03c707f5a1ecc87f6c3dee0b05 (patch)
treebb87b71e6be9ada37e7d3c4e7a6e7f9e7e417b6d /modules/classes.pl
parent14eb8a77479507875fe77640dd044d1a462e568a (diff)
make rules private, properly handle ghosting/releasing, added a proxy list, much faster join/startup
Diffstat (limited to 'modules/classes.pl')
-rw-r--r--modules/classes.pl14
1 files changed, 13 insertions, 1 deletions
diff --git a/modules/classes.pl b/modules/classes.pl
index d747815..fc80da1 100644
--- a/modules/classes.pl
+++ b/modules/classes.pl
@@ -25,6 +25,7 @@ sub new
"gecos" => \&gecos,
"nuhg" => \&nuhg,
"levenflood" => \&levenflood,
+ "proxy" => \&proxy
};
$self->{ftbl} = $tbl;
bless($self);
@@ -38,6 +39,17 @@ sub check
return $self->{ftbl}->{$item}->(@_);
}
+sub proxy
+{
+ my ($chk, $id, $event, $chan, $rev) = @_;
+ if (defined($rev) and ($rev =~ /(\d+)\.(\d+)\.(\d+)\.(\d+)\./)) {
+ if (defined($::proxies{"$4.$3.$2.$1"})) {
+ return 1;
+ }
+ }
+ return 0;
+}
+
my %ls = ();
sub levenflood
{
@@ -167,7 +179,7 @@ sub splitflood {
process_cf();
}
if ( scalar @{$cf{$id}{$chan}{$text}} == int($cut[0]) ) {
- $bs{$id}{$text} = time;
+ $bs{$id}{$text} = time unless length($text) < 10;
return 1;
}
return 0;