diff --git a/src/mhd2/tls_gnu_funcs.c b/src/mhd2/tls_gnu_funcs.c index e62c9beb..5695441f 100644 --- a/src/mhd2/tls_gnu_funcs.c +++ b/src/mhd2/tls_gnu_funcs.c @@ -256,21 +256,24 @@ daemon_init_credentials (struct MHD_Daemon *restrict d, { gnutls_datum_t cert_data; gnutls_datum_t key_data; + int rc; cert_data.data = mhd_DROP_CONST (s->tls_cert_key.v_mem_cert); cert_data.size = (unsigned int) cert_len; key_data.data = mhd_DROP_CONST (s->tls_cert_key.v_mem_key); key_data.size = (unsigned int) key_len; if (0 > - gnutls_certificate_set_x509_key_mem2 (d_tls->cred, - &cert_data, - &key_data, - GNUTLS_X509_FMT_PEM, - s->tls_cert_key.v_mem_pass, - 0)) + (rc = gnutls_certificate_set_x509_key_mem2 (d_tls->cred, + &cert_data, + &key_data, + GNUTLS_X509_FMT_PEM, + s->tls_cert_key.v_mem_pass, + 0))) { - mhd_LOG_MSG (d, MHD_SC_TLS_CONF_BAD_CERT, \ - "Failed to set the provided TLS certificate"); + mhd_logger (d, + MHD_SC_TLS_CONF_BAD_CERT, + "Failed to set the provided TLS certificate: %s", + gnutls_strerror (rc)); ret = MHD_SC_TLS_CONF_BAD_CERT; } else