summaryrefslogtreecommitdiff
path: root/main/openssl/apps/req.c
diff options
context:
space:
mode:
authorArne Schwabe <arne@rfc2549.org>2014-04-23 12:31:35 +0200
committerArne Schwabe <arne@rfc2549.org>2014-04-23 12:31:35 +0200
commit0c5af0c28f23f75f93e253aeccb00c5ad20c116e (patch)
treefae9826018c36f1011007d029b728c290c50485c /main/openssl/apps/req.c
parentc69ba1780496c260a1b4498596bae428e0df232d (diff)
Update OpenSSL to 1.0.1g
Diffstat (limited to 'main/openssl/apps/req.c')
-rw-r--r--main/openssl/apps/req.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/main/openssl/apps/req.c b/main/openssl/apps/req.c
index 85526581..5e034a85 100644
--- a/main/openssl/apps/req.c
+++ b/main/openssl/apps/req.c
@@ -644,6 +644,11 @@ bad:
if (inrand)
app_RAND_load_files(inrand);
+ if (!NCONF_get_number(req_conf,SECTION,BITS, &newkey))
+ {
+ newkey=DEFAULT_KEY_LENGTH;
+ }
+
if (keyalg)
{
genctx = set_keygen_ctx(bio_err, keyalg, &pkey_type, &newkey,
@@ -652,12 +657,6 @@ bad:
goto end;
}
- if (newkey <= 0)
- {
- if (!NCONF_get_number(req_conf,SECTION,BITS, &newkey))
- newkey=DEFAULT_KEY_LENGTH;
- }
-
if (newkey < MIN_KEY_LENGTH && (pkey_type == EVP_PKEY_RSA || pkey_type == EVP_PKEY_DSA))
{
BIO_printf(bio_err,"private key length is too short,\n");
@@ -1649,6 +1648,8 @@ static EVP_PKEY_CTX *set_keygen_ctx(BIO *err, const char *gstr, int *pkey_type,
keylen = atol(p + 1);
*pkeylen = keylen;
}
+ else
+ keylen = *pkeylen;
}
else if (p)
paramfile = p + 1;