]> dxcluster.net Git - spider.git/commitdiff
split pc92 from non pc92 nodes in init
authorminima <minima>
Wed, 3 Jan 2007 11:17:02 +0000 (11:17 +0000)
committerminima <minima>
Wed, 3 Jan 2007 11:17:02 +0000 (11:17 +0000)
perl/DXProt.pm
perl/DXProtHandle.pm

index 24cffb8d90f4512ab216bdffae66151852cdd65c..ba4f21d94f71bfbe98211a6c2775face7c245f9f 100644 (file)
@@ -770,8 +770,8 @@ sub send_pc92_config
 
        dbg('DXProt::send_pc92_config') if isdbg('trace');
 
-       # send 'my' configuration
-       my @dxchan = grep { $_->call ne $main::mycall && $_ != $self && !$_->{isolate} } DXChannel::get_all();
+       # send 'my' configuration for all users and pc92 capable nodes
+       my @dxchan = grep { $_->call ne $main::mycall && $_ != $self && !$_->{isolate} && $self->{do_pc92} } DXChannel::get_all();
        my @localnodes = map { my $r = Route::get($_->{call}); $r ? $r : () } @dxchan;
        $self->send_route_pc92($main::mycall, \&pc92c, scalar @localnodes, @localnodes);
 
index 858ea00ebafc00a05a8c026c69927acd58feb808..5715902c2cfa1c0fe8ed487237bbb33b80f73abf 100644 (file)
@@ -1264,7 +1264,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;