From ed1e84fc0a438282f68f736c7bc7a9f34cb006d1 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Wed, 14 Oct 2015 22:32:47 +0900 Subject: [PATCH] nghttpx: Improve libssl error logging --- src/shrpx_connection.cc | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/shrpx_connection.cc b/src/shrpx_connection.cc index 0ed80f57..1c2e1e45 100644 --- a/src/shrpx_connection.cc +++ b/src/shrpx_connection.cc @@ -349,6 +349,12 @@ int Connection::tls_handshake() { break; case SSL_ERROR_WANT_WRITE: break; + case SSL_ERROR_SSL: + if (LOG_ENABLED(INFO)) { + LOG(INFO) << "tls: handshake libssl error: " + << ERR_error_string(ERR_get_error(), nullptr); + } + return SHRPX_ERR_NETWORK; default: if (LOG_ENABLED(INFO)) { LOG(INFO) << "tls: handshake libssl error " << err; @@ -551,6 +557,12 @@ ssize_t Connection::write_tls(const void *data, size_t len) { // starting write watcher and timer is done in write_clear via // bio. return 0; + case SSL_ERROR_SSL: + if (LOG_ENABLED(INFO)) { + LOG(INFO) << "SSL_write: " << ERR_error_string(ERR_get_error(), + nullptr); + } + return SHRPX_ERR_NETWORK; default: if (LOG_ENABLED(INFO)) { LOG(INFO) << "SSL_write: SSL_get_error returned " << err; @@ -599,6 +611,11 @@ ssize_t Connection::read_tls(void *data, size_t len) { return SHRPX_ERR_NETWORK; case SSL_ERROR_ZERO_RETURN: return SHRPX_ERR_EOF; + case SSL_ERROR_SSL: + if (LOG_ENABLED(INFO)) { + LOG(INFO) << "SSL_read: " << ERR_error_string(ERR_get_error(), nullptr); + } + return SHRPX_ERR_NETWORK; default: if (LOG_ENABLED(INFO)) { LOG(INFO) << "SSL_read: SSL_get_error returned " << err;