diff --git a/etc/init.lisp b/etc/init.lisp index 2abda86..2866836 100644 --- a/etc/init.lisp +++ b/etc/init.lisp @@ -559,6 +559,8 @@ (define-key "c" #'gemini-change-certificate-password *gemini-certificates-keymap*) +(define-key "D" #'clear-cached-client-tls-certificates *gemini-certificates-keymap*) + ;; gemini subscription window (define-key "C-J" #'show-gemlog-to-screen *gemlog-subscription-keymap*) diff --git a/src/os-utils.lisp b/src/os-utils.lisp index 4408e02..e8f687e 100644 --- a/src/os-utils.lisp +++ b/src/os-utils.lisp @@ -195,7 +195,6 @@ :wait t))) (process-exit-success-p process)))) - (defun send-to-pipe (data program-and-args) (croatoan:end-screen) (with-input-from-string (stream data) diff --git a/src/package.lisp b/src/package.lisp index aa4059a..efa878f 100644 --- a/src/package.lisp +++ b/src/package.lisp @@ -3093,6 +3093,7 @@ :open-gemini-address :net-address-history-back :delete-shown-post + :clear-cached-client-tls-certificates :address-go-back-in-path :address-go-root-path :gemini-view-source diff --git a/src/ui-goodies.lisp b/src/ui-goodies.lisp index d0c7624..d9a7723 100644 --- a/src/ui-goodies.lisp +++ b/src/ui-goodies.lisp @@ -3586,3 +3586,8 @@ gemini client certificates!)." (thread-window:mark-selected-message-to-delete *thread-window* :move-down-selected-message nil) (focus-to-thread-window)) + +(defun clear-cached-client-tls-certificates () + "Delete all the password for TLS certificates that has been cached in memory." + (gemini-client:clear-cache-certificate-password) + (info-message (_ "Cache for TLS passord cleared")))