From a033cbf200ae059374f78fd09deef645306f4a86 Mon Sep 17 00:00:00 2001 From: Markus Makela Date: Wed, 3 Jun 2015 14:14:05 +0300 Subject: [PATCH] Added more informative error messages when SSL handshake fails. --- server/core/dcb.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/server/core/dcb.c b/server/core/dcb.c index ade2affed..95130299f 100644 --- a/server/core/dcb.c +++ b/server/core/dcb.c @@ -2789,7 +2789,7 @@ int dcb_create_SSL(DCB* dcb) int dcb_accept_SSL(DCB* dcb) { int rval,errnum; - + char errbuf[140]; rval = SSL_accept(dcb->ssl); switch(rval) @@ -2819,23 +2819,25 @@ int dcb_accept_SSL(DCB* dcb) rval = 0; LOGIF(LD,(skygw_log_write_flush(LD,"SSL_accept ongoing for %s@%s", - dcb->user, + dcb->user?dcb->user:"a connection from ", dcb->remote))); } else { rval = -1; + ERR_error_string(errnum,errbuf); skygw_log_write_flush(LE, - "Error: Fatal error in SSL_accept for %s@%s: %s", + "Error: Fatal error in SSL_accept for %s@%s: (SSL error code: %d) %s", dcb->user, dcb->remote, - ERR_error_string(errnum,NULL)); + errnum, + errbuf); } break; default: skygw_log_write_flush(LE, - "Error: Fatal error in SSL_accept, returned value was %d.", + "Error: Fatal library error in SSL_accept, returned value was %d.", rval); break; } @@ -2855,7 +2857,7 @@ int dcb_accept_SSL(DCB* dcb) int dcb_connect_SSL(DCB* dcb) { int rval,errnum; - + char errbuf[140]; rval = SSL_connect(dcb->ssl); switch(rval) @@ -2891,11 +2893,13 @@ int dcb_connect_SSL(DCB* dcb) else { rval = -1; + ERR_error_string(errnum,errbuf); skygw_log_write_flush(LE, - "Error: Fatal error in SSL_connect for %s@%s: %s", + "Error: Fatal error in SSL_accept for %s@%s: (SSL error code: %d) %s", dcb->user, dcb->remote, - ERR_error_string(errnum,NULL)); + errnum, + errbuf); } break;