projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix problem with outgoing connects also sending connect string
[spider.git]
/
perl
/
Filter.pm
diff --git
a/perl/Filter.pm
b/perl/Filter.pm
index b927dc1f0700c0917e9bccbc61f0f345123c2c54..9b1b1d50196fdf84cf870185a2954f46f5aba3f3 100644
(file)
--- a/
perl/Filter.pm
+++ b/
perl/Filter.pm
@@
-187,10
+187,15
@@
sub it
my $filter;
my @keys = sort $self->getfilkeys;
my $key;
my $filter;
my @keys = sort $self->getfilkeys;
my $key;
+ my $type = 'Dunno';
+ my $asc = '?';
+
my $r = @keys > 0 ? 0 : 1;
foreach $key (@keys) {
$filter = $self->{$key};
if ($filter->{reject} && exists $filter->{reject}->{code}) {
my $r = @keys > 0 ? 0 : 1;
foreach $key (@keys) {
$filter = $self->{$key};
if ($filter->{reject} && exists $filter->{reject}->{code}) {
+ $type = 'reject';
+ $asc = $filter->{reject}->{user};
if (&{$filter->{reject}->{code}}(\@_)) {
$r = 0;
last;
if (&{$filter->{reject}->{code}}(\@_)) {
$r = 0;
last;
@@
-199,6
+204,8
@@
sub it
}
}
if ($filter->{accept} && exists $filter->{accept}->{code}) {
}
}
if ($filter->{accept} && exists $filter->{accept}->{code}) {
+ $type = 'accept';
+ $asc = $filter->{accept}->{user};
if (&{$filter->{accept}->{code}}(\@_)) {
$r = 1;
last;
if (&{$filter->{accept}->{code}}(\@_)) {
$r = 1;
last;
@@
-211,6
+218,13
@@
sub it
# hops are done differently (simply)
my $hops = $self->{hops} if exists $self->{hops};
# hops are done differently (simply)
my $hops = $self->{hops} if exists $self->{hops};
+ if (isdbg('filter')) {
+ my $args = join '\',\'', @_;
+ my $true = $r ? "OK" : "REJ";
+ my $sort = $self->{sort};
+ $hops ||= "none";
+ dbg('filter', "Filter: $type/$sort with $asc on '$args': $true hops: $hops");
+ }
return ($r, $hops);
}
return ($r, $hops);
}
@@
-271,12
+285,11
@@
sub install
my $remove = shift;
my $name = uc $self->{name};
my $sort = $self->{sort};
my $remove = shift;
my $name = uc $self->{name};
my $sort = $self->{sort};
- my
($in) =
$name =~ s/^IN_//;
+ my
$in = "in" if
$name =~ s/^IN_//;
$name =~ s/.PL$//;
my $dxchan = DXChannel->get($name);
if ($dxchan) {
$name =~ s/.PL$//;
my $dxchan = DXChannel->get($name);
if ($dxchan) {
- $in = lc $in if $in;
my $n = "$in$sort" . "filter";
$dxchan->$n($remove ? undef : $self);
}
my $n = "$in$sort" . "filter";
$dxchan->$n($remove ? undef : $self);
}