X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=perl%2FDXProt.pm;h=42479d86216ff9a43df0d773f77be59bbe417ebc;hb=33f141e624a2443f6fa7d3608417047108251e28;hp=596f1f08d3a1256d1ddfab84a815b6be674feee3;hpb=216faa551997c3eaf1a7ccb9d512efb8d50df118;p=spider.git diff --git a/perl/DXProt.pm b/perl/DXProt.pm index 596f1f08..42479d86 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -783,7 +783,21 @@ sub announce sub chat { - goto &announce; + my $self = shift; + my $line = shift; + my $isolate = shift; + my $to = shift; + my $target = shift; + my $text = shift; + my ($filter, $hops); + + if ($self->{annfilter}) { + ($filter, $hops) = $self->{annfilter}->it(@_); + return unless $filter; + } + if (($self->is_spider || $self->is_ak1a) && $_[1] ne $main::mycall) { + send_prot_line($self, $filter, $hops, $isolate, $line); + } } @@ -1173,7 +1187,7 @@ sub disconnect # here we determine what needs to go out of the routing table my @rout; - if ($node) { + if ($node && $pc39flag != 2) { dbg('%Route::Node::List = ' . join(',', sort keys %Route::Node::list)) if isdbg('routedisc'); @rout = $node->del($main::routeroot);