From: minima Date: Sun, 2 Dec 2001 21:58:11 +0000 (+0000) Subject: Changed the checking of PC19/21 that it doesn't alter the wrong node X-Git-Tag: R_1_50~156 X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=eb944656dcd2b715338ea025fbad11e918506e26;p=spider.git Changed the checking of PC19/21 that it doesn't alter the wrong node --- diff --git a/Changes b/Changes index 23f9bbc5..93f2df1c 100644 --- a/Changes +++ b/Changes @@ -6,6 +6,7 @@ poluting the nodes table. Maybe this will make things slightly more stable. 3. Take off rspf checks on announces and spots and allow the dupe filters to take the strain. 4. Move the dupe checking AFTER the input filtering for announces and spots. +5. Changed the checking of PC19/21 that it doesn't alter the wrong node 26Nov01======================================================================= 1. Make changes to the installation manual to show making the client before actually trying to use it! Thanks to oz1lqh. Also add a line for SuSE diff --git a/perl/DXProt.pm b/perl/DXProt.pm index bd34278f..ec18e19f 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -745,6 +745,13 @@ sub normal next if length $call < 3; # min 3 letter callsigns next if $call eq $main::mycall; + # check that this PC19 isn't trying to alter the wrong dxchan + my $dxchan = DXChannel->get($call); + if ($dxchan && $dxchan != $self) { + dbg("PCPROT: PC19 from $self->{call} trying to alter wrong locally connected $call, ignored!") if isdbg('chanerr'); + return; + } + # update it if required my $r = Route::Node::get($call); my $flags = Route::here($here)|Route::conf($conf); @@ -835,8 +842,8 @@ sub normal my $node = Route::Node::get($call); if ($node) { - my $dxchan = $node->dxchan; - if ($dxchan && $dxchan ne $self) { + my $dxchan = DXChannel->get($call); + if ($dxchan && $dxchan != $self) { dbg("PCPROT: PC21 from $self->{call} trying to alter locally connected $call, ignored!") if isdbg('chanerr'); return; }