if ($pcno == 21) { # delete a cluster from the list
my $call = uc $field[1];
- my $ref = DXCluster->get($call);
- $ref->del() if $ref;
+ if ($call ne $main::mycall) { # don't allow malicious buggers to disconnect me!
+ my $ref = DXCluster->get($call);
+ $ref->del() if $ref;
+ }
last SWITCH;
}
if ($pcno == 22) {last SWITCH;}
if ($pcno == 23 || $pcno == 27) { # WWV info
+ Geomag::update(@field[1..$#field]);
last SWITCH;
}
if ($pcno == 41) { # user info
# add this station to the user database, if required
+ $field[1] =~ s/-\d+$//o;
my $user = DXUser->get_current($field[1]);
$user = DXUser->new($field[1]) if !$user;