From bec7281de7ac3fb5845cd860ac70f848380ce8cd Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Fri, 20 Aug 2021 15:52:50 -0400 Subject: Handle TLS_WANT_POLL{IN,OUT} from tls_handshake(3) with server --- server.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'server.c') diff --git a/server.c b/server.c index 853edd8..c84320a 100644 --- a/server.c +++ b/server.c @@ -146,7 +146,9 @@ int serverConnect(const char *bindHost, const char *host, const char *port) { error = tls_connect_socket(client, sock, host); if (error) errx(EX_PROTOCOL, "tls_connect: %s", tls_error(client)); - error = tls_handshake(client); + do { + error = tls_handshake(client); + } while (error == TLS_WANT_POLLIN || error == TLS_WANT_POLLOUT); if (error) errx(EX_PROTOCOL, "tls_handshake: %s", tls_error(client)); return sock; -- cgit 1.4.1