diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2013-08-02 14:40:00 +0100 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2013-08-05 15:45:00 +0100 |
commit | c9577ab5eae56cb00c17a0eb724229f0bc1397a0 (patch) | |
tree | 0b58ce36d18b68b183a4567f6f1c7fe466ec1e05 /crypto/dh/dh_ameth.c | |
parent | 3f6b6f0b8cbd7173b6c007b07caa6ec34cda08c5 (diff) | |
download | openssl-c9577ab5eae56cb00c17a0eb724229f0bc1397a0.tar.gz |
If present print j, seed and counter values for DH
Diffstat (limited to 'crypto/dh/dh_ameth.c')
-rw-r--r-- | crypto/dh/dh_ameth.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/crypto/dh/dh_ameth.c b/crypto/dh/dh_ameth.c index 8d0fe2e3f7..2841225f83 100644 --- a/crypto/dh/dh_ameth.c +++ b/crypto/dh/dh_ameth.c @@ -364,6 +364,8 @@ static int do_dh_print(BIO *bp, const DH *x, int indent, update_buflen(x->g, &buf_len); update_buflen(x->q, &buf_len); + update_buflen(x->j, &buf_len); + update_buflen(x->counter, &buf_len); update_buflen(pub_key, &buf_len); update_buflen(priv_key, &buf_len); @@ -392,6 +394,29 @@ static int do_dh_print(BIO *bp, const DH *x, int indent, if (!ASN1_bn_print(bp,"prime:",x->p,m,indent)) goto err; if (!ASN1_bn_print(bp,"generator:",x->g,m,indent)) goto err; if (x->q && !ASN1_bn_print(bp,"subgroup order:",x->q,m,indent)) goto err; + if (x->j && !ASN1_bn_print(bp,"subgroup factor:",x->j,m,indent)) + goto err; + if (x->seed) + { + int i; + BIO_indent(bp, indent, 128); + BIO_puts(bp, "seed:"); + for (i=0; i < x->seedlen; i++) + { + if ((i%15) == 0) + { + if(BIO_puts(bp,"\n") <= 0 + || !BIO_indent(bp,indent+4,128)) + goto err; + } + if (BIO_printf(bp,"%02x%s", x->seed[i], + ((i+1) == x->seedlen)?"":":") <= 0) + goto err; + } + if (BIO_write(bp,"\n",1) <= 0) return(0); + } + if (x->counter && !ASN1_bn_print(bp,"counter:",x->counter,m,indent)) + goto err; if (x->length != 0) { BIO_indent(bp, indent, 128); |