From: minima Date: Sun, 9 Sep 2001 17:00:49 +0000 (+0000) Subject: put more rigorous callsign checking in X-Git-Tag: R_1_48~33 X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?p=spider.git;a=commitdiff_plain;h=dbc63738d8b497c03bfb81c84e61161bb5c7931a put more rigorous callsign checking in --- diff --git a/cmd/dx.pl b/cmd/dx.pl index 6e14cda5..85dc4cf9 100644 --- a/cmd/dx.pl +++ b/cmd/dx.pl @@ -33,14 +33,14 @@ if ($f[0] =~ /^by$/i) { } # get the freq and callsign either way round -if (is_freq($f[1])) { +if (is_freq($f[1]) && $f[0] =~ m{^[\w\d]+(?:/[\w\d]+){0,2}$}) { $spotted = uc $f[0]; $freq = $f[1]; -} elsif (is_freq($f[0])) { +} elsif (is_freq($f[0]) && $f[1] =~ m{^[\w\d]+(?:/[\w\d]+){0,2}$}) { $freq = $f[0]; $spotted = uc $f[1]; } else { - return (1, $self->msg('dx2')); + return (1, $self->msg('dx3')); } # make line the rest of the line diff --git a/perl/Messages b/perl/Messages index d9133517..c6c5d8a6 100644 --- a/perl/Messages +++ b/perl/Messages @@ -48,6 +48,7 @@ package DXM; dup => 'Sorry, this is a duplicate', dx1 => 'Frequency $_[0] not in band (see show/band); usage: DX [BY call] freq call comments', dx2 => 'Need a callsign; usage: DX [BY call] freq call comments', + dx3 => 'The callsign or frequency is invalid', dxs => 'DX Spots flag set on $_[0]', dxu => 'DX Spots flag unset on $_[0]', e1 => 'Invalid command',