X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProt.pm;h=16b67023a7f09d579ff8bfd01ac2246f3188f74a;hb=9da1742219a27b1c02fd57794412088e4d7b3d1d;hp=d9e59c4937bc9211cc8425a804760879dfba6aa6;hpb=84e68f5fca6f33df5e2c7c801038043d339aaac2;p=spider.git diff --git a/perl/DXProt.pm b/perl/DXProt.pm index d9e59c49..16b67023 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -31,7 +31,7 @@ use strict; use vars qw($me $pc11_max_age $pc11_dup_age $pc23_dup_age %spotdup %wwvdup $last_hour %pings %rcmds %nodehops @baddx $baddxfn $pc12_dup_age - %anndup); + %anndup $allowzero); $me = undef; # the channel id for this cluster $pc11_max_age = 1*3600; # the maximum age for an incoming 'real-time' pc11 @@ -385,6 +385,8 @@ sub normal my $call = uc $field[$i+1]; my $confmode = $field[$i+2]; my $ver = $field[$i+3]; + + $ver = 5400 if !$ver && $allowzero; # now check the call over my $node = DXCluster->get_exact($call); @@ -661,6 +663,7 @@ sub normal if ($pcno == 50) { # keep alive/user list my $node = DXCluster->get_exact($field[1]); if ($node) { + return unless $node->isa('DXNode'); return unless $node->dxchan == $self; $node->update_users($field[2]); }