diff --git a/src/ssl.c b/src/ssl.c index d8ffda766..ef24fa9ff 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -2563,6 +2563,9 @@ int wolfSSL_shutdown(WOLFSSL* ssl) } else if (ssl->options.closeNotify) { ssl->error = WOLFSSL_ERROR_SYSCALL; /* simulate OpenSSL behavior */ ret = WOLFSSL_SUCCESS; + } else if ((ssl->error == WOLFSSL_ERROR_NONE) && + (ret < WOLFSSL_SUCCESS)) { + ret = WOLFSSL_SHUTDOWN_NOT_DONE; } } }