X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProt.pm;h=7359fdead0d7a85f2c6d51ff4ab36e2a0c147329;hb=dd564b3f95c49b8e78566100119945ba5352740a;hp=e41951da26b4f932be9b8103bb52e75e21adcfcd;hpb=78cf2dcb9be8128af7f8dc5ae37540c9c53c6057;p=spider.git diff --git a/perl/DXProt.pm b/perl/DXProt.pm index e41951da..7359fdea 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -1605,10 +1605,7 @@ sub process_rcmd_reply my $s = $rcmds{$fromnode}; if ($s) { my $dxchan = DXChannel->get($s->{call}); - my $ref = DXChannel->get($user) || $dxchan; - if ($ref->{call} eq $main::mycall) { - $ref = DXChannel->get($main::myalias) || $ref; - } + my $ref = $user eq $tonode ? $dxchan : (DXChannel->get($user) || $dxchan); $ref->send($line) if $ref; delete $rcmds{$fromnode} if !$dxchan; } else { @@ -1757,7 +1754,7 @@ sub send_route $routeit = adjust_hops($self, $line); # adjust its hop count by node name next unless $routeit; } - $self->send($routeit) if $self->{routefilter} || !$self->{isolate}; + $self->send($routeit); } } } @@ -1773,7 +1770,7 @@ sub broadcast_route foreach $dxchan (@dxchan) { next if $dxchan == $self; next if $dxchan == $me; - if ($dxchan->{routefilter} || !$self->{isolate}) { + if ($dxchan->{routefilter} || (!$self->{isolate} && !$dxchan->{isolate})) { $dxchan->send_route($generate, @_) } else { dbg('DXPROT: isolated') if isdbg('chanerr');