projects
/
spider.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3eb9538
)
fixed probs with checking for loops on locally connected nodes
author
djk
<djk>
Thu, 3 Jun 1999 20:13:58 +0000
(20:13 +0000)
committer
djk
<djk>
Thu, 3 Jun 1999 20:13:58 +0000
(20:13 +0000)
perl/DXProt.pm
patch
|
blob
|
history
diff --git
a/perl/DXProt.pm
b/perl/DXProt.pm
index 9519c004dee7f6f924ebcb6345fed3fb66ef368d..d9abfad6f3a4d6f17c1ae236a61ed9557aa2687b 100644
(file)
--- a/
perl/DXProt.pm
+++ b/
perl/DXProt.pm
@@
-319,7
+319,8
@@
sub normal
dbg('chan', "LOOP: $field[1] came in on wrong channel");
return;
}
dbg('chan', "LOOP: $field[1] came in on wrong channel");
return;
}
- if (DXChannel->get($field[1])) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($field[1])) && $dxchan != $self) {
dbg('chan', "LOOP: $field[1] connected locally");
return;
}
dbg('chan', "LOOP: $field[1] connected locally");
return;
}
@@
-359,7
+360,8
@@
sub normal
dbg('chan', "LOOP: $field[2] came in on wrong channel");
return;
}
dbg('chan', "LOOP: $field[2] came in on wrong channel");
return;
}
- if (DXChannel->get($field[2])) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($field[2])) && $dxchan != $self) {
dbg('chan', "LOOP: $field[2] connected locally");
return;
}
dbg('chan', "LOOP: $field[2] connected locally");
return;
}
@@
-387,7
+389,8
@@
sub normal
# now check the call over
my $node = DXCluster->get_exact($call);
if ($node) {
# now check the call over
my $node = DXCluster->get_exact($call);
if ($node) {
- if (DXChannel->get($call)) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($call)) && $dxchan != $self) {
dbg('chan', "LOOP: $call connected locally");
}
if ($node->dxchan != $self) {
dbg('chan', "LOOP: $call connected locally");
}
if ($node->dxchan != $self) {
@@
-454,7
+457,8
@@
sub normal
dbg('chan', "LOOP: $call come in on wrong channel");
return;
}
dbg('chan', "LOOP: $call come in on wrong channel");
return;
}
- if (DXChannel->get($call)) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($call)) && $dxchan != $self) {
dbg('chan', "LOOP: $call connected locally");
return;
}
dbg('chan', "LOOP: $call connected locally");
return;
}