* epa.el (epa-verify-file): Display verify result.
[elisp/epg.git] / epa.el
diff --git a/epa.el b/epa.el
index c3c8aed..100e02d 100644 (file)
--- a/epa.el
+++ b/epa.el
              (goto-char (point-min))
              (let (keys key)
                (while (re-search-forward "^\\*" nil t)
-                 (if (setq key (get-text-property (match-beginning 0) 'epa-key))
+                 (if (setq key (get-text-property (match-beginning 0)
+                                                  'epa-key))
                      (setq keys (cons key keys))))
                (nreverse keys))))
        (if (get-buffer-window epa-keys-buffer)
   (interactive "fFile: ")
   (let* ((context (epg-make-context))
         (plain (if (equal (file-name-extension file) "sig")
-                   (file-name-sans-extension file))))
+                   (file-name-sans-extension file)))
+        signature)
     (message "Verifying %s..." (file-name-nondirectory file))
     (epg-verify-file context file plain)
+    (setq signature (reverse (epg-context-result-for context 'verify)))
+    (with-output-to-temp-buffer "*epa-verify-file*"
+      (set-buffer standard-output)
+      (while signature
+       (insert (format "%s: %s %s %s\n"
+                       (epg-signature-status (car signature))
+                       (epg-signature-key-id (car signature))
+                       (epg-signature-user-id (car signature))
+                       (epg-signature-validity (car signature))))
+       (setq signature (cdr signature))))
+    (shrink-window-if-larger-than-buffer
+     (get-buffer-window "*epa-verify-file*"))
     (message "Verifying %s...done" (file-name-nondirectory file))))
 
 (defun epa-sign-file (file detached)