1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-08 00:33:13 -08:00

Make mm-view-pkcs7-verify use epg if requested

* lisp/gnus/mm-view.el (mm-view-pkcs7-verify): Respect
mml-smime-use (bug#18393).
This commit is contained in:
Lars Ingebrigtsen 2019-09-26 16:32:13 +02:00
parent 84ef1ea8b5
commit 08fbe91dfe

View file

@ -583,15 +583,23 @@ If MODE is not set, try to find mode automatically."
(defun mm-view-pkcs7-verify (handle)
(let ((verified nil))
(with-temp-buffer
(insert "MIME-Version: 1.0\n")
(mm-insert-headers "application/pkcs7-mime" "base64" "smime.p7m")
(insert-buffer-substring (mm-handle-buffer handle))
(setq verified (smime-verify-region (point-min) (point-max))))
(if verified
(insert verified)
(insert-buffer-substring smime-details-buffer)))
t)
(if (eq mml-smime-use 'epg)
;; Use EPG/gpgsm
(insert
(with-temp-buffer
(insert-buffer-substring (mm-handle-buffer handle))
(goto-char (point-min))
(let ((part (base64-decode-string (buffer-string))))
(epg-verify-string (epg-make-context 'CMS) part))))
(with-temp-buffer
(insert "MIME-Version: 1.0\n")
(mm-insert-headers "application/pkcs7-mime" "base64" "smime.p7m")
(insert-buffer-substring (mm-handle-buffer handle))
(setq verified (smime-verify-region (point-min) (point-max))))
(if verified
(insert verified)
(insert-buffer-substring smime-details-buffer)))
t))
(autoload 'epg-decrypt-string "epg")