From 07917f1d841f449157aa3aaa2507b0547dd274e7 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Mon, 16 Nov 2020 15:55:33 +0100 Subject: Refactor XmppStream, TLS and connection method logic fixes #534 --- xmpp-vala/src/core/tls_xmpp_stream.vala | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 xmpp-vala/src/core/tls_xmpp_stream.vala (limited to 'xmpp-vala/src/core/tls_xmpp_stream.vala') diff --git a/xmpp-vala/src/core/tls_xmpp_stream.vala b/xmpp-vala/src/core/tls_xmpp_stream.vala new file mode 100644 index 00000000..956a9a22 --- /dev/null +++ b/xmpp-vala/src/core/tls_xmpp_stream.vala @@ -0,0 +1,19 @@ +public abstract class Xmpp.TlsXmppStream : IoXmppStream { + + public TlsCertificateFlags? errors; + + protected bool on_invalid_certificate(TlsCertificate peer_cert, TlsCertificateFlags errors) { + this.errors = errors; + + string error_str = ""; + foreach (var f in new TlsCertificateFlags[]{TlsCertificateFlags.UNKNOWN_CA, TlsCertificateFlags.BAD_IDENTITY, + TlsCertificateFlags.NOT_ACTIVATED, TlsCertificateFlags.EXPIRED, TlsCertificateFlags.REVOKED, + TlsCertificateFlags.INSECURE, TlsCertificateFlags.GENERIC_ERROR, TlsCertificateFlags.VALIDATE_ALL}) { + if (f in errors) { + error_str += @"$(f), "; + } + } + warning(@"Tls Certificate Errors: $(error_str)"); + return false; + } +} \ No newline at end of file -- cgit v1.2.3-54-g00ecf