aboutsummaryrefslogtreecommitdiffstats
path: root/g10/seckey-cert.c
diff options
context:
space:
mode:
Diffstat (limited to 'g10/seckey-cert.c')
-rw-r--r--g10/seckey-cert.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/g10/seckey-cert.c b/g10/seckey-cert.c
index 5a7db4c97..5b0238240 100644
--- a/g10/seckey-cert.c
+++ b/g10/seckey-cert.c
@@ -215,14 +215,13 @@ do_check( PKT_secret_key *sk, const char *tryagain_text, int mode,
return gpg_error (GPG_ERR_BAD_PASSPHRASE);
}
/* the checksum may fail, so we also check the key itself */
-#warning fixme - we need to reenable this
-/* res = pubkey_check_secret_key( sk->pubkey_algo, sk->skey ); */
-/* if( res ) { */
-/* copy_secret_key( sk, save_sk ); */
-/* passphrase_clear_cache ( keyid, sk->pubkey_algo ); */
-/* free_secret_key( save_sk ); */
-/* return gpg_error (GPG_ERR_BAD_PASSPHRASE); */
-/* } */
+ res = pk_check_secret_key (sk->pubkey_algo, sk->skey);
+ if (res) {
+ copy_secret_key( sk, save_sk );
+ passphrase_clear_cache ( keyid, sk->pubkey_algo );
+ free_secret_key( save_sk );
+ return gpg_error (GPG_ERR_BAD_PASSPHRASE);
+ }
free_secret_key( save_sk );
sk->is_protected = 0;
}