Explorar el Código

do better error reporting on gnutls API errors

Christian Grothoff hace 1 año
padre
commit
3ad30a2b73
Se han modificado 1 ficheros con 11 adiciones y 8 borrados
  1. 11 8
      src/mhd2/tls_gnu_funcs.c

+ 11 - 8
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