X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=elpher.git;a=blobdiff_plain;f=elpher.el;h=340f9df8b6a04c04975e561cc46f48ac0630cc3e;hp=3fb2183200005430cb19c098fbb6f1781183e513;hb=4a7a614530e7d74318b96de4c210ea9fac9df7bc;hpb=7a1ad18494427d307351f666f54c10645d3a6252 diff --git a/elpher.el b/elpher.el index 3fb2183..340f9df 100644 --- a/elpher.el +++ b/elpher.el @@ -192,6 +192,13 @@ Otherwise, use the system browser via the BROWSE-URL function." "If non-nil, display current node information in buffer header." :type '(boolean)) +(defcustom elpher-auto-disengage-TLS nil + "If non-nil, automatically disengage TLS following an unsuccessful connection. +While enabling this may seem convenient, it is also potentially dangerous as it +allows switching from an encrypted channel back to plain text without user input." + :type '(boolean)) + + ;;; Model ;; @@ -496,9 +503,11 @@ up to the calling function." (error (if (and (consp the-error) (eq (car the-error) 'gnutls-error) - (not (elpher-address-use-tls-p address))) + (not (elpher-address-use-tls-p address)) + (or elpher-auto-disengage-TLS + (yes-or-no-p "Could not establish encrypted connection. Disable TLS mode? "))) (progn - (message "Could not establish TLS connection. Disengaging TLS mode.") + (message "Disengaging TLS mode.") (setq elpher-use-tls nil) (elpher-get-selector address after)) (elpher-process-cleanup)