diff options
author | Klemens Nanni | 2021-06-29 12:24:14 +0000 |
---|---|---|
committer | C. McEnroe | 2021-07-13 15:17:22 -0400 |
commit | 40b3f52aaf52ea48646d3e17ffeebf9883ccd95a (patch) | |
tree | 6f0c19728cf0c113bf66771321764593a3b0eb13 /irc.c | |
parent | 54d899196cf65e9954a3f5cc5da05af6afc82d3c (diff) |
Revert "Remove explicit tls_handshake(3) from ircConnect"
This reverts commit 981ebc4f12b88fbf52ed0352428a0612dd2c2568. This broke `-o' to print the server certificate; without explicit handshake there will be no tls_read(3) in this short code path.
Diffstat (limited to 'irc.c')
-rw-r--r-- | irc.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/irc.c b/irc.c index dc40201..61d74bb 100644 --- a/irc.c +++ b/irc.c @@ -162,6 +162,11 @@ int ircConnect(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)); + 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; } |