From 19787e6d4f62ca6fe0cf1be1cc34db0377d13263 Mon Sep 17 00:00:00 2001 From: toddouska Date: Wed, 12 Jul 2017 14:15:16 -0600 Subject: [PATCH] don't treat peer closed / zero return as hard error in example servers --- examples/echoserver/echoserver.c | 2 +- examples/server/server.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/examples/echoserver/echoserver.c b/examples/echoserver/echoserver.c index 101921084..77e6aa163 100644 --- a/examples/echoserver/echoserver.c +++ b/examples/echoserver/echoserver.c @@ -337,7 +337,7 @@ THREAD_RETURN CYASSL_THREAD echoserver_test(void* args) } } while (err == WC_PENDING_E); if (ret <= 0) { - if (err != SSL_ERROR_WANT_READ) { + if (err != SSL_ERROR_WANT_READ && err != SSL_ERROR_ZERO_RETURN){ printf("SSL_read echo error %d, %s!\n", err, CyaSSL_ERR_error_string(err, buffer)); } diff --git a/examples/server/server.c b/examples/server/server.c index 6dfc55539..2c85e4c4c 100644 --- a/examples/server/server.c +++ b/examples/server/server.c @@ -219,7 +219,8 @@ int ServerEchoData(SSL* ssl, int clientfd, int echoData, int throughput) } else #endif - if (err != SSL_ERROR_WANT_READ) { + if (err != SSL_ERROR_WANT_READ && + err != SSL_ERROR_ZERO_RETURN) { printf("SSL_read echo error %d\n", err); err_sys_ex(runWithErrors, "SSL_read failed"); }