loads of changes and added things
[spider.git] / perl / DXProt.pm
index 552468b92cf9ab22a0407a2fdd7ea77fcb2706fb..8985e8ab4a640a6f8409d213e4cef974a03d5999 100644 (file)
@@ -252,14 +252,17 @@ sub normal
        
     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;
        }
 
@@ -299,6 +302,7 @@ sub normal
        
     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;