From 6ba693f70e3f5b69b5b8a9b43bf4323c601cc097 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Thu, 7 Mar 2002 12:58:24 +1100 Subject: - OpenBSD CVS Sync - markus@cvs.openbsd.org 2002/03/06 00:20:54 [compat.c dh.c] compat.c --- dh.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'dh.c') diff --git a/dh.c b/dh.c index 3e1594eae..e691125e0 100644 --- a/dh.c +++ b/dh.c @@ -23,13 +23,14 @@ */ #include "includes.h" -RCSID("$OpenBSD: dh.c,v 1.19 2001/12/27 19:37:22 markus Exp $"); +RCSID("$OpenBSD: dh.c,v 1.20 2002/03/06 00:20:54 markus Exp $"); #include "xmalloc.h" #include #include #include +#include #include "buffer.h" #include "cipher.h" @@ -207,8 +208,10 @@ dh_gen_key(DH *dh, int need) if ((dh->priv_key = BN_new()) == NULL) fatal("dh_gen_key: BN_new failed"); /* generate a 2*need bits random private exponent */ - if (!BN_rand(dh->priv_key, 2*need, 0, 0)) - fatal("dh_gen_key: BN_rand failed"); + if (!BN_rand(dh->priv_key, 2*need, 0, 0)) { + int ecode = ERR_get_error(); + fatal("dh_gen_key: BN_rand failed: %s", ERR_error_string(ecode, NULL)); + } if (DH_generate_key(dh) == 0) fatal("DH_generate_key"); for (i = 0; i <= BN_num_bits(dh->priv_key); i++) -- cgit v1.2.3