From 0c78fef6a5e6bbc678d97ba8826067d789275822 Mon Sep 17 00:00:00 2001 From: Daiki Ueno Date: Sun, 10 Feb 2008 07:46:55 +0000 Subject: [PATCH] (mml2015-epg-sign): Remove skipped signers from the signer list. (mml2015-epg-encrypt): Remove skipped recipients/signers from the recipient/signer list. --- lisp/ChangeLog | 7 +++++ lisp/mml2015.el | 78 ++++++++++++++++++++++++++----------------------- 2 files changed, 48 insertions(+), 37 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 3527cb507..8da4bc3e4 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2008-02-10 Daiki Ueno + + * mml2015.el (mml2015-epg-sign): Remove skipped signers from the signer + list. + (mml2015-epg-encrypt): Remove skipped recipients/signers from the + recipient/signer list. + 2008-02-07 Katsumi Yamaoka * Makefile.in (datarootdir): Define. diff --git a/lisp/mml2015.el b/lisp/mml2015.el index 1b1ba0d85..b4d301190 100644 --- a/lisp/mml2015.el +++ b/lisp/mml2015.el @@ -1186,18 +1186,20 @@ Select keys for signing. If no one is selected, default secret key is used. " mml2015-signers t) (if mml2015-signers - (mapcar - (lambda (signer) - (setq signer-key (mml2015-epg-find-usable-key - (epg-list-keys context signer t) - 'sign)) - (unless (or signer-key - (y-or-n-p - (format "No secret key for %s; skip it? " - signer))) - (error "No secret key for %s" signer)) - signer-key) - mml2015-signers)))))) + (delq nil + (mapcar + (lambda (signer) + (setq signer-key (mml2015-epg-find-usable-key + (epg-list-keys context signer t) + 'sign)) + (unless (or signer-key + (y-or-n-p + (format + "No secret key for %s; skip it? " + signer))) + (error "No secret key for %s" signer)) + signer-key) + mml2015-signers))))))) signature micalg) (epg-context-set-armor context t) (epg-context-set-textmode context t) @@ -1267,18 +1269,19 @@ Select recipients for encryption. If no one is selected, symmetric encryption will be performed. " recipients)) (setq recipients - (mapcar - (lambda (recipient) - (setq recipient-key (mml2015-epg-find-usable-key - (epg-list-keys context recipient) - 'encrypt)) - (unless (or recipient-key - (y-or-n-p - (format "No public key for %s; skip it? " - recipient))) - (error "No public key for %s" recipient)) - recipient-key) - recipients)) + (delq nil + (mapcar + (lambda (recipient) + (setq recipient-key (mml2015-epg-find-usable-key + (epg-list-keys context recipient) + 'encrypt)) + (unless (or recipient-key + (y-or-n-p + (format "No public key for %s; skip it? " + recipient))) + (error "No public key for %s" recipient)) + recipient-key) + recipients))) (unless recipients (error "No recipient specified"))) (message-options-set 'mml2015-epg-recipients recipients)) @@ -1293,19 +1296,20 @@ Select keys for signing. If no one is selected, default secret key is used. " mml2015-signers t) (if mml2015-signers - (mapcar - (lambda (signer) - (setq signer-key (mml2015-epg-find-usable-key - (epg-list-keys context signer t) - 'sign)) - (unless (or signer-key - (y-or-n-p - (format - "No secret key for %s; skip it? " - signer))) - (error "No secret key for %s" signer)) - signer-key) - mml2015-signers)))))) + (delq nil + (mapcar + (lambda (signer) + (setq signer-key (mml2015-epg-find-usable-key + (epg-list-keys context signer t) + 'sign)) + (unless (or signer-key + (y-or-n-p + (format + "No secret key for %s; skip it? " + signer))) + (error "No secret key for %s" signer)) + signer-key) + mml2015-signers))))))) (epg-context-set-signers context signers)) (epg-context-set-armor context t) (epg-context-set-textmode context t) -- 2.25.1