summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorAlexander Færøy <ahf@0x90.dk>2016-10-21 01:22:09 +0200
committerAlexander Færøy <ahf@0x90.dk>2016-10-22 22:04:33 +0200
commitd501a54f4f256d55ae0a3cd5272d5bb8a42daee3 (patch)
treee1c495419cf23986d4c787a9f37fb28428afba36 /src/core
parent5a04430998ada5ae800aa0a88638206de51287ca (diff)
downloadirssi-d501a54f4f256d55ae0a3cd5272d5bb8a42daee3.zip
Emit the TLS handshake finished signal before we do verification.
This patch moves the emitted "tls handshake finished" signal to before we do validation of the given TLS certificate. This ensures that we display certificate information before we possibly error out and disconnects from the server.
Diffstat (limited to 'src/core')
-rw-r--r--src/core/network-openssl.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/core/network-openssl.c b/src/core/network-openssl.c
index e28c8c14..df84772c 100644
--- a/src/core/network-openssl.c
+++ b/src/core/network-openssl.c
@@ -771,6 +771,9 @@ int irssi_ssl_handshake(GIOChannel *handle)
set_peer_cert_chain_info(tls, chan->ssl);
set_server_temporary_key_info(tls, chan->ssl);
+ // Emit the TLS rec.
+ signal_emit("tls handshake finished", 2, chan->server, tls);
+
ret = 1;
do {
@@ -802,9 +805,6 @@ int irssi_ssl_handshake(GIOChannel *handle)
}
} while (0);
- // Emit the TLS rec.
- signal_emit("tls handshake finished", 2, chan->server, tls);
-
done:
tls_rec_free(tls);
X509_free(cert);