projects
/
spider.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
877fab7
)
improve instability
author
minima
<minima>
Thu, 14 Jun 2001 23:01:24 +0000
(23:01 +0000)
committer
minima
<minima>
Thu, 14 Jun 2001 23:01:24 +0000
(23:01 +0000)
perl/DXProt.pm
patch
|
blob
|
history
perl/Route/Node.pm
patch
|
blob
|
history
diff --git
a/perl/DXProt.pm
b/perl/DXProt.pm
index 3767145ca4277463ca60fe172db9b695f57b8320..f4074ade0470dfeebfea3dfe68c03ad7cf569edc 100644
(file)
--- a/
perl/DXProt.pm
+++ b/
perl/DXProt.pm
@@
-651,8
+651,10
@@
sub normal
if ($r) {
my $ar;
if ($call ne $parent->call) {
if ($r) {
my $ar;
if ($call ne $parent->call) {
- $ar = $parent->add($r);
- push @rout, $ar if $ar;
+ if ($self->in_filter_route($r)) {
+ $ar = $parent->add($r);
+ push @rout, $ar if $ar;
+ }
}
if ($r->version ne $ver || $r->flags != $flags) {
$r->version($ver);
}
if ($r->version ne $ver || $r->flags != $flags) {
$r->version($ver);
@@
-662,12
+664,10
@@
sub normal
} else {
next if $call eq $main::mycall || $call eq $self->{call};
} else {
next if $call eq $main::mycall || $call eq $self->{call};
- my $new =
$parent->new($call, $ver, Route::here($here)|Route::conf($conf));
+ my $new =
Route->new($call); # throw away
if ($self->in_filter_route($new)) {
if ($self->in_filter_route($new)) {
- $parent->add($new);
- push @rout, $new;
- } else {
- $new->del($parent);
+ my $r = $parent->add($call, $ver, $flags);
+ push @rout, $r;
}
}
}
}
@@
-1792,7
+1792,7
@@
sub broadcast_route
foreach $dxchan (@dxchan) {
next if $dxchan == $self;
next if $dxchan == $me;
foreach $dxchan (@dxchan) {
next if $dxchan == $self;
next if $dxchan == $me;
- if ($
self
->{routefilter} || !$self->{isolate}) {
+ if ($
dxchan
->{routefilter} || !$self->{isolate}) {
$dxchan->send_route($generate, @_)
} else {
dbg('DXPROT: isolated') if isdbg('chanerr');
$dxchan->send_route($generate, @_)
} else {
dbg('DXPROT: isolated') if isdbg('chanerr');
diff --git
a/perl/Route/Node.pm
b/perl/Route/Node.pm
index 4bb4c9ca4812624e43b6ed9170f7504c1d17c16a..51ecedea2bb6575c9d58220cba96011e696cd9e4 100644
(file)
--- a/
perl/Route/Node.pm
+++ b/
perl/Route/Node.pm
@@
-56,24
+56,14
@@
sub max
sub add
{
my $parent = shift;
sub add
{
my $parent = shift;
- my $call = shift;
- my $self;
-
- if (ref $call) {
- $self = $call;
- $call = $self->{call};
- } else {
- $self = get($call);
- }
-
- confess "Trying to add NULL Node call to routing tables" unless $call;
-
+ my $call = uc shift;
+ confess "Route::add trying to add $call to myself" if $call eq $parent->{call};
+ my $self = get($call);
if ($self) {
$self->_addparent($parent->{call});
$parent->_addnode($call);
return undef;
}
if ($self) {
$self->_addparent($parent->{call});
$parent->_addnode($call);
return undef;
}
- confess "Route::Node::add trying to add $call to myself" if $call eq $parent->{call};
$parent->_addnode($call);
$self = $parent->new($call, @_);
return $self;
$parent->_addnode($call);
$self = $parent->new($call, @_);
return $self;