Mercurial > dovecot > original-hg > dovecot-1.2
changeset 4298:2e4639fd3c7c HEAD
Give a nicer error message if i2d_DHparams() returns 0, which apparently it
does in some cases.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Wed, 31 May 2006 16:54:21 +0300 |
parents | 339ca5b4a3f2 |
children | dacf4dc615ec |
files | src/master/ssl-init-openssl.c |
diffstat | 1 files changed, 8 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/master/ssl-init-openssl.c Wed May 31 16:20:48 2006 +0300 +++ b/src/master/ssl-init-openssl.c Wed May 31 16:54:21 2006 +0300 @@ -6,6 +6,7 @@ #ifdef HAVE_OPENSSL +#include <openssl/err.h> #include <openssl/ssl.h> /* 2 or 5. Haven't seen their difference explained anywhere, but 2 is the @@ -24,7 +25,13 @@ len = i2d_DHparams(dh, NULL); if (len < 0) - i_fatal("i2d_DHparams() failed"); + i_fatal("i2d_DHparams() failed: %lu", ERR_get_error()); + + if (len == 0) { + i_fatal("i2d_DHparams() returned 0 for data from " + "DH_generate_parameters(bits=%d, generator=%d)", + bitsize, DH_GENERATOR); + } buf = p = i_malloc(len); len = i2d_DHparams(dh, &p);