changeset 82473:d318e41ee7db

(mh-mml-to-mime): GPG requires e-mail addresses, not aliases. So resolve aliases before passing addresses to GPG/PGP. Closes SF #649226.
author Jeffrey C Honig <jch@bsdi.com>
date Sun, 19 Aug 2007 21:17:59 +0000
parents c10f1bce794e
children bb0bbcc6093b
files lisp/mh-e/ChangeLog lisp/mh-e/mh-mime.el
diffstat 2 files changed, 20 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/mh-e/ChangeLog	Sun Aug 19 20:59:01 2007 +0000
+++ b/lisp/mh-e/ChangeLog	Sun Aug 19 21:17:59 2007 +0000
@@ -1,5 +1,9 @@
 2007-08-19  Jeffrey C Honig  <jch@honig.net>
 
+	* mh-mime.el (mh-mml-to-mime): GPG requires e-mail addresses, not
+	aliases.  So resolve aliases before passing addresses to GPG/PGP.
+	Closes SF #649226.
+
 	* mh-e.el (mh-invisible-header-fields-internal): Update with all
 	the entries from
 	http://people.dsv.su.se/~jpalme/ietf/mail-headers, plus some of my
--- a/lisp/mh-e/mh-mime.el	Sun Aug 19 20:59:01 2007 +0000
+++ b/lisp/mh-e/mh-mime.el	Sun Aug 19 21:17:59 2007 +0000
@@ -1621,8 +1621,22 @@
 This action can be undone by running \\[undo]."
   (interactive)
   (require 'message)
-  (when mh-pgp-support-flag ;; This is only needed for PGP
-    (message-options-set-recipient))
+  (when mh-pgp-support-flag
+    ;; PGP requires actual e-mail addresses, not aliases.
+    ;; Parse the recipients and sender from the message
+    (message-options-set-recipient)
+    ;; Do an alias lookup on sender
+    (message-options-set 'message-sender
+                     (mail-strip-quoted-names
+                      (mh-alias-expand
+                       (message-options-get 'message-sender))))
+    ;; Do an alias lookup on recipients
+    (message-options-set 'message-recipients
+                         (mapconcat
+                          '(lambda (ali)
+                             (mail-strip-quoted-names (mh-alias-expand ali)))
+                          (split-string (message-options-get 'message-recipients) "[, ]+")
+                          ", ")))
   (let ((saved-text (buffer-string))
         (buffer (current-buffer))
         (modified-flag (buffer-modified-p)))