diff options
| author | frosty <gabriel@bwaaa.monster> | 2026-08-25 23:41:58 -0400 |
|---|---|---|
| committer | frosty <gabriel@bwaaa.monster> | 2026-08-25 23:41:58 -0400 |
| commit | 9a82cfabe661c7891663952cf1e484c1877650ac (patch) | |
| tree | 4c9d37d2d433b5db328e7de454416620a82b5bdd /libdino | |
| parent | b2c0c1587521b9fd47437a7a9ebba16a6136a65c (diff) | |
feat: ignoring tls certificates
Diffstat (limited to 'libdino')
| -rw-r--r-- | libdino/src/application.vala | 2 | ||||
| -rw-r--r-- | libdino/src/service/connection_manager.vala | 3 |
2 files changed, 5 insertions, 0 deletions
diff --git a/libdino/src/application.vala b/libdino/src/application.vala index 8571120e..536ca949 100644 --- a/libdino/src/application.vala +++ b/libdino/src/application.vala @@ -17,9 +17,11 @@ public interface Application : GLib.Application { public abstract SearchPathGenerator? search_path_generator { get; set; } internal static string print_xmpp; + internal static bool ignore_tls_errors = false; private const OptionEntry[] options = { { "print-xmpp", 0, 0, OptionArg.STRING, ref print_xmpp, "Print XMPP stanzas identified by DESC to stderr", "DESC" }, + { "ignore-tls-errors", 0, 0, OptionArg.NONE, ref ignore_tls_errors, "Ignore TLS certificate errors", null }, { null } }; diff --git a/libdino/src/service/connection_manager.vala b/libdino/src/service/connection_manager.vala index 2ebddd92..afae1da8 100644 --- a/libdino/src/service/connection_manager.vala +++ b/libdino/src/service/connection_manager.vala @@ -384,6 +384,9 @@ public class ConnectionManager : Object { } public static bool on_invalid_certificate(string domain, TlsCertificate peer_cert, TlsCertificateFlags errors) { + if (Application.ignore_tls_errors) { + return true; + } if (domain.has_suffix(".onion") && errors == TlsCertificateFlags.UNKNOWN_CA) { // It's barely possible for .onion servers to provide a non-self-signed cert. // But that's fine because encryption is provided independently though TOR. |
