From aecf529b0546adc9cfc199f23c64fbb32ff5ed56 Mon Sep 17 00:00:00 2001 From: jayaram Date: Mon, 23 Sep 2019 16:14:56 +0530 Subject: fix for dsa key size feature request issue: pkey -text or -text_pub should show dsa key size Reviewed-by: Paul Dale Reviewed-by: Dmitry Belyavskiy (Merged from https://github.com/openssl/openssl/pull/9983) --- crypto/dsa/dsa_ameth.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'crypto') diff --git a/crypto/dsa/dsa_ameth.c b/crypto/dsa/dsa_ameth.c index 4e0ed01970..f3aab34856 100644 --- a/crypto/dsa/dsa_ameth.c +++ b/crypto/dsa/dsa_ameth.c @@ -336,6 +336,10 @@ static int do_dsa_print(BIO *bp, const DSA *x, int off, int ptype) int ret = 0; const char *ktype = NULL; const BIGNUM *priv_key, *pub_key; + int mod_len = 0; + + if (x->p != NULL) + mod_len = BN_num_bits(x->p); if (ptype == 2) priv_key = x->priv_key; @@ -360,6 +364,9 @@ static int do_dsa_print(BIO *bp, const DSA *x, int off, int ptype) if (BIO_printf(bp, "%s: (%d bit)\n", ktype, BN_num_bits(x->p)) <= 0) goto err; + } else { + if (BIO_printf(bp, "Public-Key: (%d bit)\n", mod_len) <= 0) + goto err; } if (!ASN1_bn_print(bp, "priv:", priv_key, NULL, off)) -- cgit v1.2.3