summaryrefslogtreecommitdiff
path: root/lib/libssl
diff options
context:
space:
mode:
authorJoel Sing <jsing@cvs.openbsd.org>2020-05-16 18:00:30 +0000
committerJoel Sing <jsing@cvs.openbsd.org>2020-05-16 18:00:30 +0000
commite5b58d1789aff03b9dee7051774116f0bda627a2 (patch)
tree7f5c39d0410d4c54e5f01e31c2f4f687673bca4a /lib/libssl
parentb4db7f00a04942bf9ee928e8e5d33c1ac26be3b0 (diff)
Return TLS13_IO_WANT_POLLIN after processing post-handshake messages.
After post-handshake handshake messages have been processed, we need to return TLS13_IO_WANT_POLLIN rather than TLS13_IO_WANT_RETRY. The latter will cause us to try to read another TLS record, when there may not be any data available - this will then block in the case of a blocking read. This reverts part of r1.25. Issue noticed by inoguchi@ ok beck@ tb@
Diffstat (limited to 'lib/libssl')
-rw-r--r--lib/libssl/tls13_record_layer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libssl/tls13_record_layer.c b/lib/libssl/tls13_record_layer.c
index ab006b3b1a8..e6983d5892e 100644
--- a/lib/libssl/tls13_record_layer.c
+++ b/lib/libssl/tls13_record_layer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tls13_record_layer.c,v 1.42 2020/05/13 17:54:26 jsing Exp $ */
+/* $OpenBSD: tls13_record_layer.c,v 1.43 2020/05/16 18:00:29 jsing Exp $ */
/*
* Copyright (c) 2018, 2019 Joel Sing <jsing@openbsd.org>
*
@@ -931,7 +931,7 @@ tls13_record_layer_read_internal(struct tls13_record_layer *rl,
rl->phh = 0;
if (ret == TLS13_IO_SUCCESS)
- return TLS13_IO_WANT_RETRY;
+ return TLS13_IO_WANT_POLLIN;
return ret;
}