Re: Emacs: Crypto: How to get automatic encryption?

Subject: Re: Emacs: Crypto: How to get automatic encryption?

Date: Wed, 04 Jan 2012 08:36:39 +0000

To: Jameson Graef Rollins, Gregor Zattler, Notmuch Mail

Cc:

From: David Edmondson


On Tue, 03 Jan 2012 13:45:14 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote:
> Any other suggestions?

In the function that I add to `message-send-hook' I do the following:

	(message-goto-body)
	;; If already set, don't override.
	(if (not (looking-at (regexp-quote "<#secure ")))
	    ;; If we can encrypt, do so, else just sign.
	    (if (and encrypt (dme:message-determine-encryption))
	        (insert "<#secure method=pgpmime mode=signencrypt>\n")
	      (insert "<#secure method=pgpmime mode=sign>\n"))))

Where `dme:message-determine-encryption' is:

(defun dme:message-determine-encryption ()
  "Return `t' if we have gpg public keys for all recipients of
this message."
  (require 'pgg)
  (if (not (message-news-p)) ; No encryption for news.
      (catch :exit
	(mapc
	 (lambda (addr)
	   (if (not (pgg-lookup-key (downcase (mail-strip-quoted-names addr))))
	       (throw :exit nil)))
	 (message-tokenize-header (concat
				   (message-fetch-field "to")
				   ","
				   (message-fetch-field "cc"))))
	t)
    nil))

(I'd probably re-write that to use a cl loop now - it's very old.)
part-000.sig (application/pgp-signature)

Thread: