* import.c (check_prefs): Some language fixes. (sec_to_pub_keyblock,
authorDavid Shaw <dshaw@jabberwocky.com>
Sat, 14 Feb 2004 01:54:12 +0000 (01:54 +0000)
committerDavid Shaw <dshaw@jabberwocky.com>
Sat, 14 Feb 2004 01:54:12 +0000 (01:54 +0000)
import_secret_one): Without knowing the number of MPIs there are, we
cannot try and sk-to-pk-ize a key.

g10/ChangeLog
g10/import.c

index a7c84d1..d0051dd 100644 (file)
@@ -1,3 +1,9 @@
+2004-02-13  David Shaw  <dshaw@jabberwocky.com>
+
+       * import.c (check_prefs): Some language fixes.
+       (sec_to_pub_keyblock, import_secret_one): Without knowing the
+       number of MPIs there are, we cannot try and sk-to-pk-ize a key.
+
 2004-02-12  David Shaw  <dshaw@jabberwocky.com>
 
        * import.c (check_prefs): New function to check preferences on a
index d57ae6c..9b368f6 100644 (file)
@@ -608,10 +608,10 @@ check_prefs(KBNODE keyblock)
 
   if(problem)
     {
-      log_info(_("It strongly suggested that you update"
-                " your preferences and re-distribute\n"));
-      log_info(_("this key to avoid potential algorithm"
-                " mismatch problems.\n"));
+      log_info(_("it is strongly suggested that you update"
+                " your preferences and\n"));
+      log_info(_("re-distribute this key to avoid potential algorithm"
+                " mismatch problems\n"));
 
       if(!opt.batch)
        {
@@ -956,7 +956,12 @@ sec_to_pub_keyblock(KBNODE sec_keyblock)
 
          n=pubkey_get_npkey(pk->pubkey_algo);
          if(n==0)
-           pk->pkey[0]=mpi_copy(sk->skey[0]);
+           {
+             /* we can't properly extract the pubkey without knowing
+                the number of MPIs */
+             release_kbnode(pub_keyblock);
+             return NULL;
+           }
          else
            {
              int i;
@@ -1062,8 +1067,11 @@ import_secret_one( const char *fname, KBNODE keyblock,
            /* Try and make a public key out of this. */
 
            KBNODE pub_keyblock=sec_to_pub_keyblock(keyblock);
-           import_one(fname,pub_keyblock,stats,opt.import_options);
-           release_kbnode(pub_keyblock);
+           if(pub_keyblock)
+             {
+               import_one(fname,pub_keyblock,stats,opt.import_options);
+               release_kbnode(pub_keyblock);
+             }
          }
 
        /* Now that the key is definitely incorporated into the keydb,