summaryrefslogtreecommitdiffstats
path: root/src/net_dot.c
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2023-05-24 06:19:45 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2023-05-24 06:19:45 +0000
commitefe769c42efe29f3b7a602a63357a1925b626a24 (patch)
treee484acdfea9137d1e2d70b30e94dca2e652171fb /src/net_dot.c
parentReleasing debian version 2.11.2-1. (diff)
downloaddnsperf-efe769c42efe29f3b7a602a63357a1925b626a24.tar.xz
dnsperf-efe769c42efe29f3b7a602a63357a1925b626a24.zip
Merging upstream version 2.12.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/net_dot.c')
-rw-r--r--src/net_dot.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/net_dot.c b/src/net_dot.c
index 7e58a73..02b54e4 100644
--- a/src/net_dot.c
+++ b/src/net_dot.c
@@ -175,6 +175,11 @@ static ssize_t perf__dot_recv(struct perf_net_socket* sock, void* buf, size_t le
case SSL_ERROR_WANT_READ:
errno = EAGAIN;
break;
+#if OPENSSL_VERSION_NUMBER > 0x30000000L
+ case SSL_ERROR_SSL:
+ // OpenSSL 3.0+ returns this on EOF, treat everything as bad fd and reconnect
+ errno = EBADF;
+#endif
case SSL_ERROR_SYSCALL:
switch (errno) {
case EBADF: