X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=pgg-epg.el;h=86c61550d1d685fbd03a6139f1e2adbb61915c1d;hb=6ea4768dfc6993c0553985ee7855e8ce51f766a9;hp=055157e945807bf3faed49ed5f160e70bdf64e14;hpb=f6b355f1f580ebbec961fc09e23b8f068670b864;p=elisp%2Fepg.git diff --git a/pgg-epg.el b/pgg-epg.el index 055157e..86c6155 100644 --- a/pgg-epg.el +++ b/pgg-epg.el @@ -29,14 +29,14 @@ ;;; Code: -(require 'epg) +(require 'epa) (eval-when-compile (require 'pgg)) (defvar pgg-epg-secret-key-id-list nil) (defun pgg-epg-passphrase-callback (context key-id ignore) (if (eq key-id 'SYM) - (epg-passphrase-callback-function context key-id nil) + (epa-passphrase-callback-function context key-id nil) (let* ((entry (assoc key-id epg-user-id-alist)) (passphrase (pgg-read-passphrase @@ -132,7 +132,8 @@ passphrase cache or user." (pgg-remove-passphrase-from-cache (car pgg-epg-secret-key-id-list)) (setq pgg-epg-secret-key-id-list (cdr pgg-epg-secret-key-id-list))) (signal (car error) (cdr error)))) - (if pgg-text-mode + (if (and pgg-text-mode + (fboundp 'decode-coding-string)) (setq plain (decode-coding-string plain 'raw-text))) (save-excursion (set-buffer (get-buffer-create pgg-output-buffer)) @@ -252,7 +253,7 @@ Add all public keys in region between START and END to the keyring." (fprint (epg-signature-fingerprint (car pgg-epg-signatures))) (trust-good-enough-p (memq (epg-signature-validity (car pgg-epg-signatures)) - '(marginal fully ultimate)))) + '(marginal full ultimate)))) (cond ((and signer fprint) (concat (cdr signer) (unless trust-good-enough-p @@ -265,6 +266,12 @@ Add all public keys in region between START and END to the keyring." "From unknown user"))) "From unknown user")) +(defun pgg-epg-lookup-key (string &optional type) + "Search keys associated with STRING." + (mapcar (lambda (key) + (epg-sub-key-id (car (epg-key-sub-key-list key)))) + (epg-list-keys (epg-make-context) string (not (null type))))) + (provide 'pgg-epg) ;;; pgg-epg.el ends here