X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProtHandle.pm;h=20eb37e417db85cb7d9ec2e9158b796df14f32e2;hb=dbf603084915189ec6e853e674d55688b93ff0d9;hp=9821804773d03594e4f26c2201a1eac06b9093dc;hpb=c6428493a82dbc2c59d92ba12d288975e2b936ba;p=spider.git diff --git a/perl/DXProtHandle.pm b/perl/DXProtHandle.pm index 98218047..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,6 +1267,8 @@ sub _encode_pc92_call $flag |= $ref->here ? 1 : 0; if ($ref->isa('Route::Node') || $ref->isa('DXProt')) { $flag |= 4; + 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;