Module: ngircd.git Branch: master Commit: df359835d1f8679b5d8a07c83bffe78008e85834 URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=df359...
Author: Florian Westphal fw@strlen.de Date: Fri May 7 23:25:59 2010 +0200
SSL/TLS: fix bogus 'socket closed' error message
When we get there then the ssl handshake has failed, or we could not create a ssl context because ssl library initialization failed on startup.
Reflect that in the log message.
---
src/ngircd/conn-ssl.c | 5 +++-- src/ngircd/conn.c | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/ngircd/conn-ssl.c b/src/ngircd/conn-ssl.c index ae1646c..6a0404f 100644 --- a/src/ngircd/conn-ssl.c +++ b/src/ngircd/conn-ssl.c @@ -383,9 +383,10 @@ ConnSSL_Init_SSL(CONNECTION *c) int ret; assert(c != NULL); #ifdef HAVE_LIBSSL - if (!ssl_ctx) /* NULL when library initialization failed */ + if (!ssl_ctx) { + Log(LOG_ERR, "Cannot init ssl_ctx: OpenSSL initialization failed at startup"); return false; - + } assert(c->ssl_state.ssl == NULL);
c->ssl_state.ssl = SSL_new(ssl_ctx); diff --git a/src/ngircd/conn.c b/src/ngircd/conn.c index 4367754..6994c8b 100644 --- a/src/ngircd/conn.c +++ b/src/ngircd/conn.c @@ -342,7 +342,7 @@ cb_clientserver_ssl(int sock, short what) case 0: return; /* EAGAIN: callback will be invoked again by IO layer */ default: - Conn_Close(idx, "Socket closed!", "SSL accept error", false); + Conn_Close(idx, "SSL accept error, closing socket", "SSL accept error", false); return; } if (what & IO_WANTREAD)