From 69bd5f7aa254b3d7331ffb44a6bee7a87c2f0db3 Mon Sep 17 00:00:00 2001
From: Sergey Lyubka <valenok@gmail.com>
Date: Wed, 5 Mar 2014 02:19:05 +0000
Subject: [PATCH] SSL_accept logic fix

---
 mongoose.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/mongoose.c b/mongoose.c
index a87b99cb0..c6a829666 100644
--- a/mongoose.c
+++ b/mongoose.c
@@ -656,10 +656,10 @@ static void ns_read_from_socket(struct ns_connection *conn) {
     if (ret == 0 && ok == 0 && conn->ssl != NULL) {
       int res = SSL_connect(conn->ssl);
       int ssl_err = SSL_get_error(conn->ssl, res);
-      DBG(("%p res %d %d", conn, res, ssl_err));
+      DBG(("%p SSL_connect %d %d", conn, res, ssl_err));
       if (res == 1) {
         conn->flags = NSF_SSL_HANDSHAKE_DONE;
-      } else if (res == 0 && (ssl_err == 2 || ssl_err == 3)) {
+      } else if (ssl_err == 2 || ssl_err == 3) {
         return; // Call us again
       } else {
         ok = 1;
@@ -682,10 +682,10 @@ static void ns_read_from_socket(struct ns_connection *conn) {
     } else {
       int res = SSL_accept(conn->ssl);
       int ssl_err = SSL_get_error(conn->ssl, res);
-      DBG(("%p res %d %d", conn, res, ssl_err));
+      DBG(("%p SSL_accept %d %d", conn, res, ssl_err));
       if (res == 1) {
         conn->flags |= NSF_SSL_HANDSHAKE_DONE;
-      } else if (res == 0 && (ssl_err == 2 || ssl_err == 3)) {
+      } else if (ssl_err == 2 || ssl_err == 3) {
         return; // Call us again
       } else {
         conn->flags |= NSF_CLOSE_IMMEDIATELY;
-- 
GitLab