[openssl-commits] [openssl] tls1.3-draft-18 update
Matt Caswell
matt at openssl.org
Fri Jul 14 10:25:55 UTC 2017
The branch tls1.3-draft-18 has been updated
via 669c623fe17ed8e33c742d9b8e7ea35ce90f2127 (commit)
via a889e9796b6617f98332a0cfe5473c5f63b32cfc (commit)
from f315b665715bc499b5b97b18d3a7933c7b81ee5d (commit)
- Log -----------------------------------------------------------------
commit 669c623fe17ed8e33c742d9b8e7ea35ce90f2127
Author: Roelof duToit <r at dutoit.za.net>
Date: Thu Jul 13 14:09:19 2017 -0400
Update PR#3925
Reviewed-by: Tim Hudson <tjh at openssl.org>
Reviewed-by: Bernd Edlinger <bernd.edlinger at hotmail.de>
Reviewed-by: Matt Caswell <matt at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3925)
commit a889e9796b6617f98332a0cfe5473c5f63b32cfc
Author: Roelof duToit <r at dutoit.za.net>
Date: Thu Jul 13 13:07:26 2017 -0400
Retry SSL_read on ERROR_WANT_READ.
This resolves the retry issue in general, but also the specific case where a TLS 1.3 server sends a post-handshake NewSessionTicket message prior to appdata.
Reviewed-by: Tim Hudson <tjh at openssl.org>
Reviewed-by: Bernd Edlinger <bernd.edlinger at hotmail.de>
Reviewed-by: Matt Caswell <matt at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3925)
-----------------------------------------------------------------------
Summary of changes:
apps/s_time.c | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/apps/s_time.c b/apps/s_time.c
index 998ef72..3c8efe9 100644
--- a/apps/s_time.c
+++ b/apps/s_time.c
@@ -234,8 +234,10 @@ int s_time_main(int argc, char **argv)
fmt_http_get_cmd, www_path);
if (SSL_write(scon, buf, buf_len) <= 0)
goto end;
- while ((i = SSL_read(scon, buf, sizeof(buf))) > 0)
- bytes_read += i;
+ while ((i = SSL_read(scon, buf, sizeof(buf))) > 0 ||
+ SSL_get_error(scon, i) == SSL_ERROR_WANT_READ ||
+ SSL_get_error(scon, i) == SSL_ERROR_WANT_WRITE)
+ if (i > 0) bytes_read += i;
}
#ifdef NO_SHUTDOWN
SSL_set_shutdown(scon, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN);
@@ -292,7 +294,9 @@ int s_time_main(int argc, char **argv)
fmt_http_get_cmd, www_path);
if (SSL_write(scon, buf, buf_len) <= 0)
goto end;
- while (SSL_read(scon, buf, sizeof(buf)) > 0)
+ while ((i = SSL_read(scon, buf, sizeof(buf))) > 0 ||
+ SSL_get_error(scon, i) == SSL_ERROR_WANT_READ ||
+ SSL_get_error(scon, i) == SSL_ERROR_WANT_WRITE)
continue;
}
#ifdef NO_SHUTDOWN
@@ -323,8 +327,10 @@ int s_time_main(int argc, char **argv)
www_path);
if (SSL_write(scon, buf, strlen(buf)) <= 0)
goto end;
- while ((i = SSL_read(scon, buf, sizeof(buf))) > 0)
- bytes_read += i;
+ while ((i = SSL_read(scon, buf, sizeof(buf))) > 0 ||
+ SSL_get_error(scon, i) == SSL_ERROR_WANT_READ ||
+ SSL_get_error(scon, i) == SSL_ERROR_WANT_WRITE)
+ if (i > 0) bytes_read += i;
}
#ifdef NO_SHUTDOWN
SSL_set_shutdown(scon, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN);
More information about the openssl-commits
mailing list