add an error counter to stop runaway spot suckers
[spider.git] / cmd / show / filter.pl
index 7fd7923a5093b23f96d87f42e2c795671704de22..081ac02e987555061919a2b6f7dfcec030cb4a76 100644 (file)
@@ -10,10 +10,12 @@ my @f = split /\s+/, $line;
 my @out;
 my $call = $self->call;
 
-if (@f && $self->priv >= 8) {
+if (@f) {
        if (is_callsign(uc $f[0])) {
+               return (1, $self->msg('e5')) unless $self->priv >= 1;
                $call = uc shift @f;
     } elsif ($f[0] eq 'node_default' || $f[0] eq 'user_default') {
+               return (1, $self->msg('e5')) unless $self->priv >= 1;
                $call = shift @f;
        }
 }
@@ -25,12 +27,12 @@ if (@f) {
        push @in, qw(ann spots wcy wwv);
 }
 
-my $key;
-foreach $key (@in) {
-       my $ref = Filter::read_in($key, $call, 1);
-       push @out, $ref->print($call, $key, "input") if $ref;
-       $ref = Filter::read_in($key, $call, 0);
-       push @out, $ref->print($call, $key, "") if $ref;
+my $sort;
+foreach $sort (@in) {
+       my $ref = Filter::read_in($sort, $call, 1);
+       push @out, $ref->print($call, $sort, "input") if $ref;
+       $ref = Filter::read_in($sort, $call, 0);
+       push @out, $ref->print($call, $sort, "") if $ref;
 }
 push @out, $self->msg('filter3', $call) unless @out;
 return (1, @out);