04Jan22=======================================================================
1. Fix issue in the RBN (and probably other places) with callsigns that
contain trailing / in callsigns like: OH0K/6, K2PO/7 etc.
+2. Regard strange callsigns like DR4W-HB (seen in skimmer spots) as invalid.
+ This *should be* something like HB9/DR4W or (spit) DR4W/HB9.
03Jan22=======================================================================
1. Allow overrides (on modern versions of perl) with things in DXVars.pm, such
$clusterport. This is really only of use for people trying to run more than
sub basecall
{
- my ($r) = $_[0] =~ m{^((?:[\w\d]+/)?[\w\d]+(?:/[\w\d]+)?)(?:-\d+)?(?:-\#)?$};
+ my ($r) = $_[0] =~ m{^((?:[\w\d]+/)?[\w\d]+(?:/[\w\d]+)*)(?:-\d+)?(?:-\#)?$};
return $r;
}
sub normalise_call
{
- my ($c, $ssid) = $_[0] =~ m|^((?:[\w\d]+/)?[\d\w]+(?:/[\w\d]+)?)(?:-(\d+))?(?:-\#)?$|;
+ my ($c, $ssid) = $_[0] =~ m|^((?:[\w\d]+/)?[\d\w]+(?:/[\w\d]+)*)(?:-(\d+))?(?:-\#)?$|;
my $ncall = $c;
$ssid += 0;
$ncall .= "-$ssid" if $ssid;
}
# remove all extraneous crap from the origin - just leave the base callsign
- $origin = basecall($origin);
- unless ($origin) {
+ my $norigin = basecall($origin);
+ unless ($norigin) {
dbg("RBN: ERROR '$origin' is an invalid callsign, dumped");
return;
}
+ $origin = $norigin;
# is this callsign in badspotter list?
if ($DXProt::badspotter->in($origin) || $DXProt::badnode->in($origin)) {