From a0abd4d6329f67b698180834e75335fe7eca52c4 Mon Sep 17 00:00:00 2001 From: Daiki Ueno Date: Wed, 21 Jul 2010 14:56:18 +0900 Subject: [PATCH] Fix multiple-recipient handling of Gnus S/MIME. * mml.el (mml-parse-1): Collect "certfile" attributes in "<#secure>" tag (Bug#6654). --- lisp/gnus/ChangeLog | 5 +++++ lisp/gnus/mml.el | 11 ++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 4abcd9824e2..2a2011e8843 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,8 @@ +2010-07-21 Daiki Ueno + + * mml.el (mml-parse-1): Collect "certfile" attributes in "<#secure>" + tag (Bug#6654). + 2010-07-20 Katsumi Yamaoka * gnus-sum.el (gnus-summary-bookmark-make-record): Bookmark position in diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index 170bc69fe3a..2ebd7996d77 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -228,7 +228,10 @@ part. This is for the internal use, you should never modify the value.") (let* (secure-mode (taginfo (mml-read-tag)) (keyfile (cdr (assq 'keyfile taginfo))) - (certfile (cdr (assq 'certfile taginfo))) + (certfiles (delq nil (mapcar (lambda (tag) + (if (eq (car-safe tag) 'certfile) + (cdr tag))) + taginfo))) (recipients (cdr (assq 'recipients taginfo))) (sender (cdr (assq 'sender taginfo))) (location (cdr (assq 'tag-location taginfo))) @@ -254,8 +257,10 @@ part. This is for the internal use, you should never modify the value.") ,@tags ,(if keyfile "keyfile") ,keyfile - ,(if certfile "certfile") - ,certfile + ,@(apply #'append + (mapcar (lambda (certfile) + (list "certfile" certfile)) + certfiles)) ,(if recipients "recipients") ,recipients ,(if sender "sender") -- 2.11.4.GIT