From f407bb6a97301424766c85401e885e46deb5fd14 Mon Sep 17 00:00:00 2001 From: David Shaw Date: Sat, 14 Feb 2004 01:54:12 +0000 Subject: * 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. --- g10/ChangeLog | 6 ++++++ g10/import.c | 22 +++++++++++++++------- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/g10/ChangeLog b/g10/ChangeLog index a7c84d1fd..d0051ddcd 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,9 @@ +2004-02-13 David Shaw + + * 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 * import.c (check_prefs): New function to check preferences on a diff --git a/g10/import.c b/g10/import.c index d57ae6c9e..9b368f681 100644 --- a/g10/import.c +++ b/g10/import.c @@ -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, -- cgit v1.2.3