aboutsummaryrefslogtreecommitdiffstats
path: root/g10/keygen.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2005-01-25 14:34:51 +0000
committerWerner Koch <[email protected]>2005-01-25 14:34:51 +0000
commitaa62bf505ddb5bb85187fbdfe5293e4d4465600a (patch)
tree5da7ffe259d83a5927c7c16b486a2d224e1eb519 /g10/keygen.c
parent(get_cached_data): New arg GET_IMMEDIATE to bypass (diff)
downloadgnupg-aa62bf505ddb5bb85187fbdfe5293e4d4465600a.tar.gz
gnupg-aa62bf505ddb5bb85187fbdfe5293e4d4465600a.zip
(do_generate_keypair): Don't continue after an error;
fixed at two places. Why at all didn't I used a goto to cleanup, tsss?
Diffstat (limited to '')
-rw-r--r--g10/keygen.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/g10/keygen.c b/g10/keygen.c
index 000454eb9..a20c48c1b 100644
--- a/g10/keygen.c
+++ b/g10/keygen.c
@@ -2820,7 +2820,7 @@ do_generate_keypair( struct para_data_s *para,
get_parameter_uint (para, pKEYUSAGE));
}
- if( get_parameter( para, pSUBKEYTYPE ) )
+ if( !rc && get_parameter( para, pSUBKEYTYPE ) )
{
if (!card)
{
@@ -2859,7 +2859,7 @@ do_generate_keypair( struct para_data_s *para,
did_sub = 1;
}
- if (card && get_parameter (para, pAUTHKEYTYPE))
+ if (!rc && card && get_parameter (para, pAUTHKEYTYPE))
{
rc = gen_card_key (PUBKEY_ALGO_RSA, 3, 0, pub_root, sec_root,
get_parameter_u32 (para, pKEYEXPIRE), para);