X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProt.pm;h=010620a0f67725a5c8323d322a4b699a70787735;hb=4769c7b97999c7df7f7c25f26d89902c2e86573b;hp=baaea72dde04b32fe8edd7565d935c5dd288264a;hpb=a16379954943ab0ff013fbd26b0421cae92c55d6;p=spider.git diff --git a/perl/DXProt.pm b/perl/DXProt.pm index baaea72d..010620a0 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -236,6 +236,14 @@ sub new # add this node to the table, the values get filled in later my $pkg = shift; my $call = shift; + + # if we have an entry already, then send a PC21 to all connect + # old style connections, because we are about to get the real deal + if (my $ref = Route::Node::get($call)) { + dbg("ROUTE: $call is already in the routing table, deleting") if isdbg('route'); + my @rout = $ref->del_nodes; + $self->route_pc21($main::mycall, undef, @rout) if @rout; + } $main::routeroot->add($call, '5000', Route::here(1)) if $call ne $main::mycall; return $self;