SSL_shutdown was done too early.
diff --git a/demos/ssl/cli.cpp b/demos/ssl/cli.cpp index bab4e47..b3d7269 100644 --- a/demos/ssl/cli.cpp +++ b/demos/ssl/cli.cpp
@@ -97,11 +97,10 @@ err = SSL_write (ssl, "Hello World!", strlen("Hello World!")); CHK_SSL(err); - SSL_shutdown (ssl); /* send SSL/TLS close_notify */ - err = SSL_read (ssl, buf, sizeof(buf) - 1); CHK_SSL(err); buf[err] = '\0'; printf ("Got %d chars:'%s'\n", err, buf); + SSL_shutdown (ssl); /* send SSL/TLS close_notify */ /* Clean up. */