X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProtHandle.pm;h=20eb37e417db85cb7d9ec2e9158b796df14f32e2;hb=dbf603084915189ec6e853e674d55688b93ff0d9;hp=858ea00ebafc00a05a8c026c69927acd58feb808;hpb=9e5520826fe61fd3ac6941f2b8bf736a432eaa15;p=spider.git diff --git a/perl/DXProtHandle.pm b/perl/DXProtHandle.pm index 858ea00e..20eb37e4 100644 --- a/perl/DXProtHandle.pm +++ b/perl/DXProtHandle.pm @@ -473,8 +473,10 @@ sub handle_16 $user->lastin($main::systime) unless DXChannel::get($call); $user->put; } - $self->route_pc16($origin, $line, $parent, @rout) if @rout; - + if (@rout) { + $self->route_pc16($origin, $line, $parent, @rout); + $self->route_pc92a($main::mycall, undef, $parent, @rout); + } } # remove a user @@ -541,6 +543,7 @@ sub handle_17 $uref = Route->new($ucall) unless $uref; # throw away $self->route_pc17($origin, $line, $parent, $uref); + $self->route_pc92d($main::mycall, undef, $parent, $uref); } # link request @@ -1264,7 +1267,8 @@ sub _encode_pc92_call $flag |= $ref->here ? 1 : 0; if ($ref->isa('Route::Node') || $ref->isa('DXProt')) { $flag |= 4; - $flag |= 2 if $call ne $main::mycall && DXChannel::get($call); + my $dxchan = DXChannel::get($call); + $flag |= 2 if $call ne $main::mycall && $dxchan && !$dxchan->{do_pc92}; if ($ext) { if ($ref->version) { my $version = $ref->version || 1.0;