fix pc17 coming in with users on wrong nodes
authorminima <minima>
Sat, 3 Mar 2001 13:53:15 +0000 (13:53 +0000)
committerminima <minima>
Sat, 3 Mar 2001 13:53:15 +0000 (13:53 +0000)
Changes
perl/DXProt.pm

diff --git a/Changes b/Changes
index bbb26d86e4bfa839a6a438d26cd61b8d19cc5b1e..c41612bc8a95bf585f0a19e97126462418ee9543 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,6 @@
 03Mar01=======================================================================
 1. allow incoming and outgoing IP connects direct to cluster.pl
+2. fixed (long standing)a hole in PC17 handling
 28Feb01=======================================================================
 1. allow sh/c gb7 (ie show the config of all gb7 nodes)(for example)
 2. get rid of spurious DXHash 'uninitialised' messages if no corresponding 
index 455311e3fceac64163d920ceeb508111cafa52d7..6f4b089dd1841835bedd320f8b0b979e0c98a5b6 100644 (file)
@@ -597,12 +597,16 @@ sub normal
                                dbg('chan', "PCPROT: $field[2] came in on wrong channel");
                                return;
                        }
-                       if (($dxchan = DXChannel->get($field[2])) && $dxchan != $self) {
-                               dbg('chan', "PCPROT: $field[2] connected locally");
+                       if (($dxchan = DXChannel->get($field[1])) && $dxchan != $self) {
+                               dbg('chan', "PCPROT: $field[1] connected locally");
                                return;
                        }
                        my $ref = DXCluster->get_exact($field[1]);
                        if ($ref) {
+                               if ($ref->mynode != $node) {
+                                       dbg('chan', "PCPROT: $field[1] came in from wrong node $field[2]");
+                                       return;
+                               }
                                $ref->del;
                        } else {
                                dbg('chan', "PCPROT: $field[1] not known" );